Repository: Apress/pro-angular-9 Branch: master Commit: 02b37f353b4f Files: 4488 Total size: 20.2 MB Directory structure: gitextract_1dv_duh0/ ├── .gitattributes ├── 02 - Your First Angular App/ │ └── todo/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── todoItem.ts │ │ │ └── todoList.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 04 - HTML and CSS Primer/ │ └── HtmlCssPrimer/ │ ├── index.html │ └── package.json ├── 05 - JavaScript and TypeScript Primer, Part 1/ │ └── JavaScriptPrimer/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ └── app.module.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 06 - JavaScript and TypeScript Primer, Part 2/ │ ├── Beginning of Chapter/ │ │ └── JavaScriptPrimer/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ └── app.module.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── JavaScriptPrimer/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ └── app.module.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── modules/ │ │ │ ├── DuplicateName.ts │ │ │ └── NameAndWeather.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ ├── tempConverter.ts │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 07 - SportsStore/ │ ├── Beginning of Chapter/ │ │ └── SportsStore/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── browserslist │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ └── app.module.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── SportsStore/ │ ├── .editorconfig │ ├── angular.json │ ├── authMiddleware.js │ ├── browserslist │ ├── data.js │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── product.repository.ts │ │ │ │ └── static.datasource.ts │ │ │ └── store/ │ │ │ ├── counter.directive.ts │ │ │ ├── store.component.html │ │ │ ├── store.component.ts │ │ │ └── store.module.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 08 - SportsStore - Orders and Checkout/ │ ├── Beginning of Chapter/ │ │ └── SportsStore/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── browserslist │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ └── store/ │ │ │ │ ├── counter.directive.ts │ │ │ │ ├── store.component.html │ │ │ │ ├── store.component.ts │ │ │ │ └── store.module.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── SportsStore/ │ ├── .editorconfig │ ├── angular.json │ ├── authMiddleware.js │ ├── browserslist │ ├── data.js │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── model/ │ │ │ │ ├── cart.model.ts │ │ │ │ ├── model.module.ts │ │ │ │ ├── order.model.ts │ │ │ │ ├── order.repository.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── product.repository.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── store/ │ │ │ │ ├── cartDetail.component.html │ │ │ │ ├── cartDetail.component.ts │ │ │ │ ├── cartSummary.component.html │ │ │ │ ├── cartSummary.component.ts │ │ │ │ ├── checkout.component.css │ │ │ │ ├── checkout.component.html │ │ │ │ ├── checkout.component.ts │ │ │ │ ├── counter.directive.ts │ │ │ │ ├── store.component.html │ │ │ │ ├── store.component.ts │ │ │ │ └── store.module.ts │ │ │ └── storeFirst.guard.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 09 - SportsStore - Admin/ │ ├── Beginning of Chapter/ │ │ └── SportsStore/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── browserslist │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── cart.model.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── order.model.ts │ │ │ │ │ ├── order.repository.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── store/ │ │ │ │ │ ├── cartDetail.component.html │ │ │ │ │ ├── cartDetail.component.ts │ │ │ │ │ ├── cartSummary.component.html │ │ │ │ │ ├── cartSummary.component.ts │ │ │ │ │ ├── checkout.component.css │ │ │ │ │ ├── checkout.component.html │ │ │ │ │ ├── checkout.component.ts │ │ │ │ │ ├── counter.directive.ts │ │ │ │ │ ├── store.component.html │ │ │ │ │ ├── store.component.ts │ │ │ │ │ └── store.module.ts │ │ │ │ └── storeFirst.guard.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── SportsStore/ │ ├── .editorconfig │ ├── angular.json │ ├── authMiddleware.js │ ├── browserslist │ ├── data.js │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── admin/ │ │ │ │ ├── admin.component.html │ │ │ │ ├── admin.component.ts │ │ │ │ ├── admin.module.ts │ │ │ │ ├── auth.component.html │ │ │ │ ├── auth.component.ts │ │ │ │ ├── auth.guard.ts │ │ │ │ ├── orderTable.component.html │ │ │ │ ├── orderTable.component.ts │ │ │ │ ├── productEditor.component.html │ │ │ │ ├── productEditor.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ └── productTable.component.ts │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── model/ │ │ │ │ ├── auth.service.ts │ │ │ │ ├── cart.model.ts │ │ │ │ ├── model.module.ts │ │ │ │ ├── order.model.ts │ │ │ │ ├── order.repository.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── product.repository.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── store/ │ │ │ │ ├── cartDetail.component.html │ │ │ │ ├── cartDetail.component.ts │ │ │ │ ├── cartSummary.component.html │ │ │ │ ├── cartSummary.component.ts │ │ │ │ ├── checkout.component.css │ │ │ │ ├── checkout.component.html │ │ │ │ ├── checkout.component.ts │ │ │ │ ├── counter.directive.ts │ │ │ │ ├── store.component.html │ │ │ │ ├── store.component.ts │ │ │ │ └── store.module.ts │ │ │ └── storeFirst.guard.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 10 - SportsStore - Deployment/ │ ├── Beginning of Chapter/ │ │ └── SportsStore/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── browserslist │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── admin/ │ │ │ │ │ ├── admin.component.html │ │ │ │ │ ├── admin.component.ts │ │ │ │ │ ├── admin.module.ts │ │ │ │ │ ├── auth.component.html │ │ │ │ │ ├── auth.component.ts │ │ │ │ │ ├── auth.guard.ts │ │ │ │ │ ├── orderTable.component.html │ │ │ │ │ ├── orderTable.component.ts │ │ │ │ │ ├── productEditor.component.html │ │ │ │ │ ├── productEditor.component.ts │ │ │ │ │ ├── productTable.component.html │ │ │ │ │ └── productTable.component.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── auth.service.ts │ │ │ │ │ ├── cart.model.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── order.model.ts │ │ │ │ │ ├── order.repository.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── store/ │ │ │ │ │ ├── cartDetail.component.html │ │ │ │ │ ├── cartDetail.component.ts │ │ │ │ │ ├── cartSummary.component.html │ │ │ │ │ ├── cartSummary.component.ts │ │ │ │ │ ├── checkout.component.css │ │ │ │ │ ├── checkout.component.html │ │ │ │ │ ├── checkout.component.ts │ │ │ │ │ ├── counter.directive.ts │ │ │ │ │ ├── store.component.html │ │ │ │ │ ├── store.component.ts │ │ │ │ │ └── store.module.ts │ │ │ │ └── storeFirst.guard.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── SportsStore/ │ ├── .dockerignore │ ├── .editorconfig │ ├── Dockerfile │ ├── angular.json │ ├── authMiddleware.js │ ├── browserslist │ ├── data.js │ ├── deploy-package.json │ ├── dist/ │ │ └── SportsStore/ │ │ ├── 3rdpartylicenses.txt │ │ ├── 5-es2015.b2d2985f67757f20fa32.js │ │ ├── 5-es5.b2d2985f67757f20fa32.js │ │ ├── index.html │ │ ├── main-es2015.17a65f3ef96068aef242.js │ │ ├── main-es5.17a65f3ef96068aef242.js │ │ ├── manifest.webmanifest │ │ ├── ngsw-worker.js │ │ ├── ngsw.json │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.ef57c12ac0fc432d4c88.js │ │ ├── runtime-es5.ef57c12ac0fc432d4c88.js │ │ ├── safety-worker.js │ │ └── styles.87fc5b77face4b6618ed.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── ngsw-config.json │ ├── package.json │ ├── server.js │ ├── serverdata.json │ ├── src/ │ │ ├── app/ │ │ │ ├── admin/ │ │ │ │ ├── admin.component.html │ │ │ │ ├── admin.component.ts │ │ │ │ ├── admin.module.ts │ │ │ │ ├── auth.component.html │ │ │ │ ├── auth.component.ts │ │ │ │ ├── auth.guard.ts │ │ │ │ ├── orderTable.component.html │ │ │ │ ├── orderTable.component.ts │ │ │ │ ├── productEditor.component.html │ │ │ │ ├── productEditor.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ └── productTable.component.ts │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── model/ │ │ │ │ ├── auth.service.ts │ │ │ │ ├── cart.model.ts │ │ │ │ ├── connection.service.ts │ │ │ │ ├── model.module.ts │ │ │ │ ├── order.model.ts │ │ │ │ ├── order.repository.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── product.repository.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── store/ │ │ │ │ ├── cartDetail.component.html │ │ │ │ ├── cartDetail.component.ts │ │ │ │ ├── cartSummary.component.html │ │ │ │ ├── cartSummary.component.ts │ │ │ │ ├── checkout.component.css │ │ │ │ ├── checkout.component.html │ │ │ │ ├── checkout.component.ts │ │ │ │ ├── counter.directive.ts │ │ │ │ ├── store.component.html │ │ │ │ ├── store.component.ts │ │ │ │ └── store.module.ts │ │ │ └── storeFirst.guard.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── manifest.webmanifest │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 11 - Angular Projects and Tools/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ └── template.html │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 12 - Using Data Bindings/ │ ├── Beginning of Chapter/ │ │ └── example/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ │ └── styles.18138bb15891daf44583.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ └── template.html │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 13 - Using the Built-In Directives/ │ ├── Beginning of Chapter/ │ │ └── example/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ │ └── styles.18138bb15891daf44583.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ └── template.html │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 14 - Using Events and Forms/ │ ├── Beginning of Chapter/ │ │ └── example/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ │ └── styles.18138bb15891daf44583.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── form.model.ts │ │ │ ├── limit.formvalidator.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ └── template.html │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 15 - Attribute Directives/ │ ├── Beginning of Chapter/ │ │ └── example/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ │ └── styles.18138bb15891daf44583.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── attr.directive.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── form.model.ts │ │ │ ├── limit.formvalidator.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ ├── template.html │ │ │ └── twoway.directive.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 16 - Structural Directives/ │ ├── Beginning of Chapter/ │ │ └── example/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ │ └── styles.18138bb15891daf44583.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── template.html │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── attr.directive.ts │ │ │ ├── cellColor.directive.ts │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── form.model.ts │ │ │ ├── iterator.directive.ts │ │ │ ├── limit.formvalidator.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ ├── structure.directive.ts │ │ │ ├── template.html │ │ │ └── twoway.directive.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 17 - Creating Components/ │ ├── Beginning of Chapter/ │ │ └── example/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ │ └── styles.18138bb15891daf44583.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── attr.directive.ts │ │ │ ├── cellColor.directive.ts │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── form.model.ts │ │ │ ├── iterator.directive.ts │ │ │ ├── limit.formvalidator.ts │ │ │ ├── product.model.ts │ │ │ ├── productForm.component.css │ │ │ ├── productForm.component.html │ │ │ ├── productForm.component.ts │ │ │ ├── productTable.component.html │ │ │ ├── productTable.component.ts │ │ │ ├── repository.model.ts │ │ │ ├── structure.directive.ts │ │ │ ├── template.html │ │ │ ├── toggleView.component.html │ │ │ ├── toggleView.component.ts │ │ │ └── twoway.directive.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 18 - Using Pipes/ │ ├── Beginning of Chapter/ │ │ └── example/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ │ └── styles.18138bb15891daf44583.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── addTax.pipe.ts │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── attr.directive.ts │ │ │ ├── categoryFilter.pipe.ts │ │ │ ├── cellColor.directive.ts │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── form.model.ts │ │ │ ├── iterator.directive.ts │ │ │ ├── limit.formvalidator.ts │ │ │ ├── product.model.ts │ │ │ ├── productForm.component.css │ │ │ ├── productForm.component.html │ │ │ ├── productForm.component.ts │ │ │ ├── productTable.component.html │ │ │ ├── productTable.component.ts │ │ │ ├── repository.model.ts │ │ │ ├── structure.directive.ts │ │ │ ├── template.html │ │ │ ├── toggleView.component.html │ │ │ ├── toggleView.component.ts │ │ │ └── twoway.directive.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 19 - Using Services/ │ ├── Beginning of Chapter/ │ │ └── example/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ │ └── styles.18138bb15891daf44583.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── addTax.pipe.ts │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── attr.directive.ts │ │ │ ├── categoryFilter.pipe.ts │ │ │ ├── cellColor.directive.ts │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── discount.pipe.ts │ │ │ ├── discount.service.ts │ │ │ ├── discountAmount.directive.ts │ │ │ ├── discountDisplay.component.ts │ │ │ ├── discountEditor.component.ts │ │ │ ├── form.model.ts │ │ │ ├── iterator.directive.ts │ │ │ ├── limit.formvalidator.ts │ │ │ ├── product.model.ts │ │ │ ├── productForm.component.css │ │ │ ├── productForm.component.html │ │ │ ├── productForm.component.ts │ │ │ ├── productTable.component.html │ │ │ ├── productTable.component.ts │ │ │ ├── repository.model.ts │ │ │ ├── structure.directive.ts │ │ │ ├── template.html │ │ │ ├── toggleView.component.html │ │ │ ├── toggleView.component.ts │ │ │ └── twoway.directive.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 20 - Using Service Providers/ │ ├── Beginning of Chapter/ │ │ └── example/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ │ └── styles.18138bb15891daf44583.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── discount.pipe.ts │ │ │ │ ├── discount.service.ts │ │ │ │ ├── discountAmount.directive.ts │ │ │ │ ├── discountDisplay.component.ts │ │ │ │ ├── discountEditor.component.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── log.service.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── addTax.pipe.ts │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── attr.directive.ts │ │ │ ├── categoryFilter.pipe.ts │ │ │ ├── cellColor.directive.ts │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ ├── component.ts │ │ │ ├── datasource.model.ts │ │ │ ├── discount.pipe.ts │ │ │ ├── discount.service.ts │ │ │ ├── discountAmount.directive.ts │ │ │ ├── discountDisplay.component.ts │ │ │ ├── discountEditor.component.ts │ │ │ ├── form.model.ts │ │ │ ├── iterator.directive.ts │ │ │ ├── limit.formvalidator.ts │ │ │ ├── log.service.ts │ │ │ ├── product.model.ts │ │ │ ├── productForm.component.css │ │ │ ├── productForm.component.html │ │ │ ├── productForm.component.ts │ │ │ ├── productTable.component.html │ │ │ ├── productTable.component.ts │ │ │ ├── repository.model.ts │ │ │ ├── structure.directive.ts │ │ │ ├── template.html │ │ │ ├── toggleView.component.html │ │ │ ├── toggleView.component.ts │ │ │ ├── twoway.directive.ts │ │ │ └── valueDisplay.directive.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 21 - Using and Creating Modules/ │ └── End of Chapter/ │ └── example/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── dist/ │ │ └── example/ │ │ ├── 3rdpartylicenses.txt │ │ ├── index.html │ │ ├── main-es2015.bde05668bf3f8343a347.js │ │ ├── main-es5.bde05668bf3f8343a347.js │ │ ├── polyfills-es2015.ca64e4516afbb1b890d5.js │ │ ├── polyfills-es5.277e2e1d6fb2daf91a5c.js │ │ ├── runtime-es2015.0811dcefd377500b5b1a.js │ │ ├── runtime-es5.0811dcefd377500b5b1a.js │ │ └── styles.18138bb15891daf44583.css │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.module.ts │ │ │ ├── common/ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── common.module.ts │ │ │ │ ├── discount.pipe.ts │ │ │ │ ├── discount.service.ts │ │ │ │ ├── discountAmount.directive.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── log.service.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── twoway.directive.ts │ │ │ │ └── valueDisplay.directive.ts │ │ │ ├── component.ts │ │ │ ├── components/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── components.module.ts │ │ │ │ ├── discountDisplay.component.ts │ │ │ │ ├── discountEditor.component.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── toggleView.component.html │ │ │ │ └── toggleView.component.ts │ │ │ ├── model/ │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ └── repository.model.ts │ │ │ └── template.html │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 22 - Creating the Example Project/ │ └── exampleApp/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── core/ │ │ │ │ ├── core.module.ts │ │ │ │ ├── form.component.css │ │ │ │ ├── form.component.html │ │ │ │ ├── form.component.ts │ │ │ │ ├── sharedState.model.ts │ │ │ │ ├── table.component.html │ │ │ │ └── table.component.ts │ │ │ ├── messages/ │ │ │ │ ├── message.component.html │ │ │ │ ├── message.component.ts │ │ │ │ ├── message.model.ts │ │ │ │ ├── message.module.ts │ │ │ │ └── message.service.ts │ │ │ └── model/ │ │ │ ├── model.module.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ └── static.datasource.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 23 - Using Reactive Extensions/ │ ├── Beginning of Chapter/ │ │ └── exampleApp/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── exampleApp/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── core/ │ │ │ │ ├── core.module.ts │ │ │ │ ├── form.component.css │ │ │ │ ├── form.component.html │ │ │ │ ├── form.component.ts │ │ │ │ ├── sharedState.model.ts │ │ │ │ ├── state.pipe.ts │ │ │ │ ├── table.component.html │ │ │ │ └── table.component.ts │ │ │ ├── messages/ │ │ │ │ ├── message.component.html │ │ │ │ ├── message.component.ts │ │ │ │ ├── message.model.ts │ │ │ │ ├── message.module.ts │ │ │ │ └── message.service.ts │ │ │ └── model/ │ │ │ ├── model.module.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ └── static.datasource.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 24 - Making HTTP Requests/ │ ├── Beginning of Chapter/ │ │ └── exampleApp/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── exampleApp/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── restData.js │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── core/ │ │ │ │ ├── core.module.ts │ │ │ │ ├── form.component.css │ │ │ │ ├── form.component.html │ │ │ │ ├── form.component.ts │ │ │ │ ├── sharedState.model.ts │ │ │ │ ├── state.pipe.ts │ │ │ │ ├── table.component.html │ │ │ │ └── table.component.ts │ │ │ ├── messages/ │ │ │ │ ├── errorHandler.ts │ │ │ │ ├── message.component.html │ │ │ │ ├── message.component.ts │ │ │ │ ├── message.model.ts │ │ │ │ ├── message.module.ts │ │ │ │ └── message.service.ts │ │ │ └── model/ │ │ │ ├── model.module.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ ├── rest.datasource.ts │ │ │ └── static.datasource.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 25 - Using URL Routing/ │ ├── Beginning of Chapter/ │ │ └── exampleApp/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── exampleApp/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── restData.js │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── app.routing.ts │ │ │ ├── core/ │ │ │ │ ├── core.module.ts │ │ │ │ ├── form.component.css │ │ │ │ ├── form.component.html │ │ │ │ ├── form.component.ts │ │ │ │ ├── sharedState.model.ts │ │ │ │ ├── state.pipe.ts │ │ │ │ ├── table.component.html │ │ │ │ └── table.component.ts │ │ │ ├── messages/ │ │ │ │ ├── errorHandler.ts │ │ │ │ ├── message.component.html │ │ │ │ ├── message.component.ts │ │ │ │ ├── message.model.ts │ │ │ │ ├── message.module.ts │ │ │ │ └── message.service.ts │ │ │ └── model/ │ │ │ ├── model.module.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ ├── rest.datasource.ts │ │ │ └── static.datasource.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 26 - Using URL Routing - Part 2/ │ ├── Beginning of Chapter/ │ │ └── exampleApp/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── exampleApp/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── restData.js │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── app.routing.ts │ │ │ ├── core/ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ ├── core.module.ts │ │ │ │ ├── form.component.css │ │ │ │ ├── form.component.html │ │ │ │ ├── form.component.ts │ │ │ │ ├── notFound.component.ts │ │ │ │ ├── productCount.component.ts │ │ │ │ ├── sharedState.model.ts │ │ │ │ ├── state.pipe.ts │ │ │ │ ├── table.component.html │ │ │ │ └── table.component.ts │ │ │ ├── messages/ │ │ │ │ ├── errorHandler.ts │ │ │ │ ├── message.component.html │ │ │ │ ├── message.component.ts │ │ │ │ ├── message.model.ts │ │ │ │ ├── message.module.ts │ │ │ │ └── message.service.ts │ │ │ └── model/ │ │ │ ├── model.module.ts │ │ │ ├── product.model.ts │ │ │ ├── repository.model.ts │ │ │ ├── rest.datasource.ts │ │ │ └── static.datasource.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 27 - Using URL Routing - Part 3/ │ ├── Beginning of Chapter/ │ │ └── exampleApp/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── exampleApp/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── restData.js │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── app.routing.ts │ │ │ ├── core/ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ ├── core.module.ts │ │ │ │ ├── form.component.css │ │ │ │ ├── form.component.html │ │ │ │ ├── form.component.ts │ │ │ │ ├── notFound.component.ts │ │ │ │ ├── productCount.component.ts │ │ │ │ ├── sharedState.model.ts │ │ │ │ ├── state.pipe.ts │ │ │ │ ├── table.component.html │ │ │ │ ├── table.component.ts │ │ │ │ └── unsaved.guard.ts │ │ │ ├── load.guard.ts │ │ │ ├── messages/ │ │ │ │ ├── errorHandler.ts │ │ │ │ ├── message.component.html │ │ │ │ ├── message.component.ts │ │ │ │ ├── message.model.ts │ │ │ │ ├── message.module.ts │ │ │ │ └── message.service.ts │ │ │ ├── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── model.resolver.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── ondemand/ │ │ │ │ ├── first.component.ts │ │ │ │ ├── ondemand.component.html │ │ │ │ ├── ondemand.component.ts │ │ │ │ ├── ondemand.module.ts │ │ │ │ └── second.component.ts │ │ │ └── terms.guard.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 28 - Animations/ │ └── exampleApp/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── restData.js │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── app.routing.ts │ │ │ ├── core/ │ │ │ │ ├── animationUtils.ts │ │ │ │ ├── categoryCount.component.ts │ │ │ │ ├── core.module.ts │ │ │ │ ├── form.component.css │ │ │ │ ├── form.component.html │ │ │ │ ├── form.component.ts │ │ │ │ ├── notFound.component.ts │ │ │ │ ├── productCount.component.ts │ │ │ │ ├── sharedState.model.ts │ │ │ │ ├── state.pipe.ts │ │ │ │ ├── table.animations.ts │ │ │ │ ├── table.component.html │ │ │ │ ├── table.component.ts │ │ │ │ └── unsaved.guard.ts │ │ │ ├── load.guard.ts │ │ │ ├── messages/ │ │ │ │ ├── errorHandler.ts │ │ │ │ ├── message.component.html │ │ │ │ ├── message.component.ts │ │ │ │ ├── message.model.ts │ │ │ │ ├── message.module.ts │ │ │ │ └── message.service.ts │ │ │ ├── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── model.resolver.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── ondemand/ │ │ │ │ ├── first.component.ts │ │ │ │ ├── ondemand.component.html │ │ │ │ ├── ondemand.component.ts │ │ │ │ ├── ondemand.module.ts │ │ │ │ └── second.component.ts │ │ │ └── terms.guard.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── 29 - Unit Testing/ │ ├── Beginning of Chapter/ │ │ └── exampleApp/ │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── browserslist │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── animationUtils.ts │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.animations.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ ├── table.component.ts │ │ │ │ │ └── unsaved.guard.ts │ │ │ │ ├── load.guard.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── model.resolver.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── repository.model.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── ondemand/ │ │ │ │ │ ├── first.component.ts │ │ │ │ │ ├── ondemand.component.html │ │ │ │ │ ├── ondemand.component.ts │ │ │ │ │ ├── ondemand.module.ts │ │ │ │ │ └── second.component.ts │ │ │ │ └── terms.guard.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── End of Chapter/ │ └── exampleApp/ │ ├── .editorconfig │ ├── angular.json │ ├── browserslist │ ├── e2e/ │ │ ├── protractor.conf.js │ │ ├── src/ │ │ │ ├── app.e2e-spec.ts │ │ │ └── app.po.ts │ │ └── tsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── restData.js │ ├── src/ │ │ ├── app/ │ │ │ ├── app.component.css │ │ │ ├── app.component.html │ │ │ ├── app.component.ts │ │ │ ├── app.module.ts │ │ │ ├── app.routing.ts │ │ │ ├── core/ │ │ │ │ ├── animationUtils.ts │ │ │ │ ├── categoryCount.component.ts │ │ │ │ ├── core.module.ts │ │ │ │ ├── form.component.css │ │ │ │ ├── form.component.html │ │ │ │ ├── form.component.ts │ │ │ │ ├── notFound.component.ts │ │ │ │ ├── productCount.component.ts │ │ │ │ ├── sharedState.model.ts │ │ │ │ ├── state.pipe.ts │ │ │ │ ├── table.animations.ts │ │ │ │ ├── table.component.html │ │ │ │ ├── table.component.ts │ │ │ │ └── unsaved.guard.ts │ │ │ ├── load.guard.ts │ │ │ ├── messages/ │ │ │ │ ├── errorHandler.ts │ │ │ │ ├── message.component.html │ │ │ │ ├── message.component.ts │ │ │ │ ├── message.model.ts │ │ │ │ ├── message.module.ts │ │ │ │ └── message.service.ts │ │ │ ├── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── model.resolver.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── ondemand/ │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── first.component.html │ │ │ │ ├── first.component.ts │ │ │ │ ├── ondemand.component.html │ │ │ │ ├── ondemand.component.ts │ │ │ │ ├── ondemand.module.ts │ │ │ │ └── second.component.ts │ │ │ ├── terms.guard.ts │ │ │ └── tests/ │ │ │ ├── app.component.spec.ts │ │ │ ├── attr.directive.spec.ts │ │ │ └── first.component.spec.ts │ │ ├── environments/ │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.html │ │ ├── main.ts │ │ ├── polyfills.ts │ │ ├── styles.css │ │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── Contributing.md ├── LICENSE.txt ├── README.md ├── Update for Angular 10/ │ ├── Chapter 02/ │ │ └── todo/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── todoItem.ts │ │ │ │ └── todoList.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 05/ │ │ └── JavaScriptPrimer/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ └── app.module.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 06/ │ │ └── JavaScriptPrimer/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ └── app.module.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── modules/ │ │ │ │ ├── DuplicateName.ts │ │ │ │ └── NameAndWeather.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ ├── tempConverter.ts │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 07/ │ │ └── SportsStore/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ └── store/ │ │ │ │ ├── counter.directive.ts │ │ │ │ ├── store.component.html │ │ │ │ ├── store.component.ts │ │ │ │ └── store.module.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 08/ │ │ └── SportsStore/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── cart.model.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── order.model.ts │ │ │ │ │ ├── order.repository.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── store/ │ │ │ │ │ ├── cartDetail.component.html │ │ │ │ │ ├── cartDetail.component.ts │ │ │ │ │ ├── cartSummary.component.html │ │ │ │ │ ├── cartSummary.component.ts │ │ │ │ │ ├── checkout.component.css │ │ │ │ │ ├── checkout.component.html │ │ │ │ │ ├── checkout.component.ts │ │ │ │ │ ├── counter.directive.ts │ │ │ │ │ ├── store.component.html │ │ │ │ │ ├── store.component.ts │ │ │ │ │ └── store.module.ts │ │ │ │ └── storeFirst.guard.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 09/ │ │ └── SportsStore/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── admin/ │ │ │ │ │ ├── admin.component.html │ │ │ │ │ ├── admin.component.ts │ │ │ │ │ ├── admin.module.ts │ │ │ │ │ ├── auth.component.html │ │ │ │ │ ├── auth.component.ts │ │ │ │ │ ├── auth.guard.ts │ │ │ │ │ ├── orderTable.component.html │ │ │ │ │ ├── orderTable.component.ts │ │ │ │ │ ├── productEditor.component.html │ │ │ │ │ ├── productEditor.component.ts │ │ │ │ │ ├── productTable.component.html │ │ │ │ │ └── productTable.component.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── auth.service.ts │ │ │ │ │ ├── cart.model.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── order.model.ts │ │ │ │ │ ├── order.repository.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── store/ │ │ │ │ │ ├── cartDetail.component.html │ │ │ │ │ ├── cartDetail.component.ts │ │ │ │ │ ├── cartSummary.component.html │ │ │ │ │ ├── cartSummary.component.ts │ │ │ │ │ ├── checkout.component.css │ │ │ │ │ ├── checkout.component.html │ │ │ │ │ ├── checkout.component.ts │ │ │ │ │ ├── counter.directive.ts │ │ │ │ │ ├── store.component.html │ │ │ │ │ ├── store.component.ts │ │ │ │ │ └── store.module.ts │ │ │ │ └── storeFirst.guard.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 10/ │ │ └── SportsStore/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── ngsw-config.json │ │ ├── package.json │ │ ├── server.js │ │ ├── serverData.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── admin/ │ │ │ │ │ ├── admin.component.html │ │ │ │ │ ├── admin.component.ts │ │ │ │ │ ├── admin.module.ts │ │ │ │ │ ├── auth.component.html │ │ │ │ │ ├── auth.component.ts │ │ │ │ │ ├── auth.guard.ts │ │ │ │ │ ├── orderTable.component.html │ │ │ │ │ ├── orderTable.component.ts │ │ │ │ │ ├── productEditor.component.html │ │ │ │ │ ├── productEditor.component.ts │ │ │ │ │ ├── productTable.component.html │ │ │ │ │ └── productTable.component.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── auth.service.ts │ │ │ │ │ ├── cart.model.ts │ │ │ │ │ ├── connection.service.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── order.model.ts │ │ │ │ │ ├── order.repository.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── store/ │ │ │ │ │ ├── cartDetail.component.html │ │ │ │ │ ├── cartDetail.component.ts │ │ │ │ │ ├── cartSummary.component.html │ │ │ │ │ ├── cartSummary.component.ts │ │ │ │ │ ├── checkout.component.css │ │ │ │ │ ├── checkout.component.html │ │ │ │ │ ├── checkout.component.ts │ │ │ │ │ ├── counter.directive.ts │ │ │ │ │ ├── store.component.html │ │ │ │ │ ├── store.component.ts │ │ │ │ │ └── store.module.ts │ │ │ │ └── storeFirst.guard.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── manifest.webmanifest │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 11/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 12/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 13/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 14/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 15/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── template.html │ │ │ │ └── twoway.directive.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 16/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ └── twoway.directive.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 17/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ └── twoway.directive.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 18/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ └── twoway.directive.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 19/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── discount.pipe.ts │ │ │ │ ├── discount.service.ts │ │ │ │ ├── discountAmount.directive.ts │ │ │ │ ├── discountDisplay.component.ts │ │ │ │ ├── discountEditor.component.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ └── twoway.directive.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 20/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── discount.pipe.ts │ │ │ │ ├── discount.service.ts │ │ │ │ ├── discountAmount.directive.ts │ │ │ │ ├── discountDisplay.component.ts │ │ │ │ ├── discountEditor.component.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── log.service.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ ├── twoway.directive.ts │ │ │ │ └── valueDisplay.directive.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 21/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.module.ts │ │ │ │ ├── common/ │ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ │ ├── attr.directive.ts │ │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ │ ├── cellColor.directive.ts │ │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ │ ├── common.module.ts │ │ │ │ │ ├── discount.pipe.ts │ │ │ │ │ ├── discount.service.ts │ │ │ │ │ ├── discountAmount.directive.ts │ │ │ │ │ ├── iterator.directive.ts │ │ │ │ │ ├── log.service.ts │ │ │ │ │ ├── structure.directive.ts │ │ │ │ │ ├── twoway.directive.ts │ │ │ │ │ └── valueDisplay.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── components/ │ │ │ │ │ ├── app.component.css │ │ │ │ │ ├── app.component.html │ │ │ │ │ ├── app.component.ts │ │ │ │ │ ├── components.module.ts │ │ │ │ │ ├── discountDisplay.component.ts │ │ │ │ │ ├── discountEditor.component.ts │ │ │ │ │ ├── productForm.component.css │ │ │ │ │ ├── productForm.component.html │ │ │ │ │ ├── productForm.component.ts │ │ │ │ │ ├── productTable.component.html │ │ │ │ │ ├── productTable.component.ts │ │ │ │ │ ├── toggleView.component.html │ │ │ │ │ └── toggleView.component.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── datasource.model.ts │ │ │ │ │ ├── form.model.ts │ │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ └── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 22/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 23/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 24/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 25/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 26/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 27/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ ├── table.component.ts │ │ │ │ │ └── unsaved.guard.ts │ │ │ │ ├── load.guard.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── model.resolver.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── repository.model.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── ondemand/ │ │ │ │ │ ├── first.component.ts │ │ │ │ │ ├── ondemand.component.html │ │ │ │ │ ├── ondemand.component.ts │ │ │ │ │ ├── ondemand.module.ts │ │ │ │ │ └── second.component.ts │ │ │ │ └── terms.guard.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 28/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── animationUtils.ts │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.animations.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ ├── table.component.ts │ │ │ │ │ └── unsaved.guard.ts │ │ │ │ ├── load.guard.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── model.resolver.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── repository.model.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── ondemand/ │ │ │ │ │ ├── first.component.ts │ │ │ │ │ ├── ondemand.component.html │ │ │ │ │ ├── ondemand.component.ts │ │ │ │ │ ├── ondemand.module.ts │ │ │ │ │ └── second.component.ts │ │ │ │ └── terms.guard.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 29/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── animationUtils.ts │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.animations.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ ├── table.component.ts │ │ │ │ │ └── unsaved.guard.ts │ │ │ │ ├── load.guard.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── model.resolver.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── repository.model.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── ondemand/ │ │ │ │ │ ├── attr.directive.ts │ │ │ │ │ ├── first.component.html │ │ │ │ │ ├── first.component.ts │ │ │ │ │ ├── ondemand.component.html │ │ │ │ │ ├── ondemand.component.ts │ │ │ │ │ ├── ondemand.module.ts │ │ │ │ │ └── second.component.ts │ │ │ │ ├── terms.guard.ts │ │ │ │ └── tests/ │ │ │ │ ├── app.component.spec.ts │ │ │ │ ├── attr.directive.spec.ts │ │ │ │ └── first.component.spec.ts │ │ │ ├── assets/ │ │ │ │ └── .gitkeep │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.base.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── README.md ├── Update for Angular 11/ │ ├── Chapter 02/ │ │ └── todo/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── todoItem.ts │ │ │ │ └── todoList.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 04/ │ │ └── HtmlCssPrimer/ │ │ ├── index.html │ │ └── package.json │ ├── Chapter 05/ │ │ └── JavaScriptPrimer/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ └── app.module.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 06/ │ │ └── JavaScriptPrimer/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ └── app.module.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── modules/ │ │ │ │ ├── DuplicateName.ts │ │ │ │ └── NameAndWeather.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ ├── tempConverter.ts │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 07/ │ │ └── SportsStore/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ └── store/ │ │ │ │ ├── counter.directive.ts │ │ │ │ ├── store.component.html │ │ │ │ ├── store.component.ts │ │ │ │ └── store.module.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 08/ │ │ └── SportsStore/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── cart.model.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── order.model.ts │ │ │ │ │ ├── order.repository.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── store/ │ │ │ │ │ ├── cartDetail.component.html │ │ │ │ │ ├── cartDetail.component.ts │ │ │ │ │ ├── cartSummary.component.html │ │ │ │ │ ├── cartSummary.component.ts │ │ │ │ │ ├── checkout.component.css │ │ │ │ │ ├── checkout.component.html │ │ │ │ │ ├── checkout.component.ts │ │ │ │ │ ├── counter.directive.ts │ │ │ │ │ ├── store.component.html │ │ │ │ │ ├── store.component.ts │ │ │ │ │ └── store.module.ts │ │ │ │ └── storeFirst.guard.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 09/ │ │ └── SportsStore/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── data.js │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── admin/ │ │ │ │ │ ├── admin.component.html │ │ │ │ │ ├── admin.component.ts │ │ │ │ │ ├── admin.module.ts │ │ │ │ │ ├── auth.component.html │ │ │ │ │ ├── auth.component.ts │ │ │ │ │ ├── auth.guard.ts │ │ │ │ │ ├── orderTable.component.html │ │ │ │ │ ├── orderTable.component.ts │ │ │ │ │ ├── productEditor.component.html │ │ │ │ │ ├── productEditor.component.ts │ │ │ │ │ ├── productTable.component.html │ │ │ │ │ └── productTable.component.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── auth.service.ts │ │ │ │ │ ├── cart.model.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── order.model.ts │ │ │ │ │ ├── order.repository.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── store/ │ │ │ │ │ ├── cartDetail.component.html │ │ │ │ │ ├── cartDetail.component.ts │ │ │ │ │ ├── cartSummary.component.html │ │ │ │ │ ├── cartSummary.component.ts │ │ │ │ │ ├── checkout.component.css │ │ │ │ │ ├── checkout.component.html │ │ │ │ │ ├── checkout.component.ts │ │ │ │ │ ├── counter.directive.ts │ │ │ │ │ ├── store.component.html │ │ │ │ │ ├── store.component.ts │ │ │ │ │ └── store.module.ts │ │ │ │ └── storeFirst.guard.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 10/ │ │ └── SportsStore/ │ │ ├── .browserslistrc │ │ ├── .dockerignore │ │ ├── Dockerfile │ │ ├── angular.json │ │ ├── authMiddleware.js │ │ ├── data.js │ │ ├── deploy-package.json │ │ ├── dist/ │ │ │ └── SportsStore/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── 4.31e080808fcb56f7ac65.js │ │ │ ├── index.html │ │ │ ├── main.51b6248b65201a3b0124.js │ │ │ ├── manifest.webmanifest │ │ │ ├── ngsw-worker.js │ │ │ ├── ngsw.json │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.f31414a4bbd349807336.js │ │ │ ├── safety-worker.js │ │ │ └── styles.e64f6c6459bd207237f5.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── ngsw-config.json │ │ ├── package.json │ │ ├── server.js │ │ ├── serverdata.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── admin/ │ │ │ │ │ ├── admin.component.html │ │ │ │ │ ├── admin.component.ts │ │ │ │ │ ├── admin.module.ts │ │ │ │ │ ├── auth.component.html │ │ │ │ │ ├── auth.component.ts │ │ │ │ │ ├── auth.guard.ts │ │ │ │ │ ├── orderTable.component.html │ │ │ │ │ ├── orderTable.component.ts │ │ │ │ │ ├── productEditor.component.html │ │ │ │ │ ├── productEditor.component.ts │ │ │ │ │ ├── productTable.component.html │ │ │ │ │ └── productTable.component.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── auth.service.ts │ │ │ │ │ ├── cart.model.ts │ │ │ │ │ ├── connection.service.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── order.model.ts │ │ │ │ │ ├── order.repository.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── product.repository.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── store/ │ │ │ │ │ ├── cartDetail.component.html │ │ │ │ │ ├── cartDetail.component.ts │ │ │ │ │ ├── cartSummary.component.html │ │ │ │ │ ├── cartSummary.component.ts │ │ │ │ │ ├── checkout.component.css │ │ │ │ │ ├── checkout.component.html │ │ │ │ │ ├── checkout.component.ts │ │ │ │ │ ├── counter.directive.ts │ │ │ │ │ ├── serverdata.json │ │ │ │ │ ├── store.component.html │ │ │ │ │ ├── store.component.ts │ │ │ │ │ └── store.module.ts │ │ │ │ └── storeFirst.guard.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── manifest.webmanifest │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 11/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 12/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 13/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 14/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 15/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── template.html │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 16/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 17/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 18/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 19/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── discount.pipe.ts │ │ │ │ ├── discount.service.ts │ │ │ │ ├── discountAmount.directive.ts │ │ │ │ ├── discountDisplay.component.ts │ │ │ │ ├── discountEditor.component.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ └── twoway.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 20/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── attr.directive.ts │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ ├── cellColor.directive.ts │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── datasource.model.ts │ │ │ │ ├── discount.pipe.ts │ │ │ │ ├── discount.service.ts │ │ │ │ ├── discountAmount.directive.ts │ │ │ │ ├── discountDisplay.component.ts │ │ │ │ ├── discountEditor.component.ts │ │ │ │ ├── form.model.ts │ │ │ │ ├── iterator.directive.ts │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ ├── log.service.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── productForm.component.css │ │ │ │ ├── productForm.component.html │ │ │ │ ├── productForm.component.ts │ │ │ │ ├── productTable.component.html │ │ │ │ ├── productTable.component.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── structure.directive.ts │ │ │ │ ├── template.html │ │ │ │ ├── toggleView.component.html │ │ │ │ ├── toggleView.component.ts │ │ │ │ ├── twoway.directive.ts │ │ │ │ └── valueDisplay.directive.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 21/ │ │ └── example/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── dist/ │ │ │ └── example/ │ │ │ ├── 3rdpartylicenses.txt │ │ │ ├── index.html │ │ │ ├── main.f78bdaa2683ef468e3b3.js │ │ │ ├── polyfills.bf99d438b005d57b2b31.js │ │ │ ├── runtime.359d5ee4682f20e936e9.js │ │ │ └── styles.51422a5c94b8290ff190.css │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.module.ts │ │ │ │ ├── common/ │ │ │ │ │ ├── addTax.pipe.ts │ │ │ │ │ ├── attr.directive.ts │ │ │ │ │ ├── categoryFilter.pipe.ts │ │ │ │ │ ├── cellColor.directive.ts │ │ │ │ │ ├── cellColorSwitcher.directive.ts │ │ │ │ │ ├── common.module.ts │ │ │ │ │ ├── discount.pipe.ts │ │ │ │ │ ├── discount.service.ts │ │ │ │ │ ├── discountAmount.directive.ts │ │ │ │ │ ├── iterator.directive.ts │ │ │ │ │ ├── log.service.ts │ │ │ │ │ ├── structure.directive.ts │ │ │ │ │ ├── twoway.directive.ts │ │ │ │ │ └── valueDisplay.directive.ts │ │ │ │ ├── component.ts │ │ │ │ ├── components/ │ │ │ │ │ ├── app.component.css │ │ │ │ │ ├── app.component.html │ │ │ │ │ ├── app.component.ts │ │ │ │ │ ├── components.module.ts │ │ │ │ │ ├── discountDisplay.component.ts │ │ │ │ │ ├── discountEditor.component.ts │ │ │ │ │ ├── productForm.component.css │ │ │ │ │ ├── productForm.component.html │ │ │ │ │ ├── productForm.component.ts │ │ │ │ │ ├── productTable.component.html │ │ │ │ │ ├── productTable.component.ts │ │ │ │ │ ├── toggleView.component.html │ │ │ │ │ └── toggleView.component.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── datasource.model.ts │ │ │ │ │ ├── form.model.ts │ │ │ │ │ ├── limit.formvalidator.ts │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ └── repository.model.ts │ │ │ │ └── template.html │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 22/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 23/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 24/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 25/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 26/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ └── table.component.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ └── model/ │ │ │ │ ├── model.module.ts │ │ │ │ ├── product.model.ts │ │ │ │ ├── repository.model.ts │ │ │ │ ├── rest.datasource.ts │ │ │ │ └── static.datasource.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 27/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ ├── table.component.ts │ │ │ │ │ └── unsaved.guard.ts │ │ │ │ ├── load.guard.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── model.resolver.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── repository.model.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── ondemand/ │ │ │ │ │ ├── first.component.ts │ │ │ │ │ ├── ondemand.component.html │ │ │ │ │ ├── ondemand.component.ts │ │ │ │ │ ├── ondemand.module.ts │ │ │ │ │ └── second.component.ts │ │ │ │ └── terms.guard.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 28/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── animationUtils.ts │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.animations.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ ├── table.component.ts │ │ │ │ │ └── unsaved.guard.ts │ │ │ │ ├── load.guard.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── model.resolver.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── repository.model.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── ondemand/ │ │ │ │ │ ├── first.component.ts │ │ │ │ │ ├── ondemand.component.html │ │ │ │ │ ├── ondemand.component.ts │ │ │ │ │ ├── ondemand.module.ts │ │ │ │ │ └── second.component.ts │ │ │ │ └── terms.guard.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── Chapter 29/ │ │ └── exampleApp/ │ │ ├── .browserslistrc │ │ ├── angular.json │ │ ├── e2e/ │ │ │ ├── protractor.conf.js │ │ │ ├── src/ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ └── app.po.ts │ │ │ └── tsconfig.json │ │ ├── karma.conf.js │ │ ├── package.json │ │ ├── restData.js │ │ ├── src/ │ │ │ ├── app/ │ │ │ │ ├── app.component.css │ │ │ │ ├── app.component.html │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ ├── app.routing.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── animationUtils.ts │ │ │ │ │ ├── categoryCount.component.ts │ │ │ │ │ ├── core.module.ts │ │ │ │ │ ├── form.component.css │ │ │ │ │ ├── form.component.html │ │ │ │ │ ├── form.component.ts │ │ │ │ │ ├── notFound.component.ts │ │ │ │ │ ├── productCount.component.ts │ │ │ │ │ ├── sharedState.model.ts │ │ │ │ │ ├── state.pipe.ts │ │ │ │ │ ├── table.animations.ts │ │ │ │ │ ├── table.component.html │ │ │ │ │ ├── table.component.ts │ │ │ │ │ └── unsaved.guard.ts │ │ │ │ ├── load.guard.ts │ │ │ │ ├── messages/ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ ├── message.component.html │ │ │ │ │ ├── message.component.ts │ │ │ │ │ ├── message.model.ts │ │ │ │ │ ├── message.module.ts │ │ │ │ │ └── message.service.ts │ │ │ │ ├── model/ │ │ │ │ │ ├── model.module.ts │ │ │ │ │ ├── model.resolver.ts │ │ │ │ │ ├── product.model.ts │ │ │ │ │ ├── repository.model.ts │ │ │ │ │ ├── rest.datasource.ts │ │ │ │ │ └── static.datasource.ts │ │ │ │ ├── ondemand/ │ │ │ │ │ ├── attr.directive.ts │ │ │ │ │ ├── first.component.html │ │ │ │ │ ├── first.component.ts │ │ │ │ │ ├── ondemand.component.html │ │ │ │ │ ├── ondemand.component.ts │ │ │ │ │ ├── ondemand.module.ts │ │ │ │ │ └── second.component.ts │ │ │ │ ├── terms.guard.ts │ │ │ │ └── tests/ │ │ │ │ ├── app.component.spec.ts │ │ │ │ ├── attr.directive.spec.ts │ │ │ │ └── first.component.spec.ts │ │ │ ├── environments/ │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ ├── styles.css │ │ │ └── test.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── README.md └── corrections+errata.md ================================================ FILE CONTENTS ================================================ ================================================ FILE: .gitattributes ================================================ # Auto detect text files and perform LF normalization * text=auto ================================================ FILE: 02 - Your First Angular App/todo/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 02 - Your First Angular App/todo/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "todo": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/todo", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "todo:build" }, "configurations": { "production": { "browserTarget": "todo:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "todo:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "todo:serve" }, "configurations": { "production": { "devServerTarget": "todo:serve:production" } } } } }}, "defaultProject": "todo" } ================================================ FILE: 02 - Your First Angular App/todo/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 02 - Your First Angular App/todo/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 02 - Your First Angular App/todo/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('todo app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 02 - Your First Angular App/todo/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 02 - Your First Angular App/todo/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 02 - Your First Angular App/todo/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/todo'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 02 - Your First Angular App/todo/package.json ================================================ { "name": "todo", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "bootstrap": "^4.4.1", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/node": "^12.11.1", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 02 - Your First Angular App/todo/src/app/app.component.css ================================================ ================================================ FILE: 02 - Your First Angular App/todo/src/app/app.component.html ================================================

{{ username }}'s To Do List

{{ itemCount }} {{ showComplete ? "" : "Incomplete" }} Items
#DescriptionDone
{{ i + 1 }} {{ item.task }}
================================================ FILE: 02 - Your First Angular App/todo/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; import { TodoList } from "./todoList"; import { TodoItem } from "./todoItem"; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { private list = new TodoList("Bob", [ new TodoItem("Go for run", true), new TodoItem("Get flowers"), new TodoItem("Collect tickets"), ]); get username(): string { return this.list.user; } get itemCount(): number { return this.items.length; } get items(): readonly TodoItem[] { return this.list.items.filter(item => this.showComplete || !item.complete); } addItem(newItem) { if (newItem != "") { this.list.addItem(newItem); } } showComplete: boolean = false; } ================================================ FILE: 02 - Your First Angular App/todo/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { FormsModule } from "@angular/forms"; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, FormsModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 02 - Your First Angular App/todo/src/app/todoItem.ts ================================================ export class TodoItem { constructor(taskVal: string, completeVal: boolean = false) { this.task = taskVal; this.complete = completeVal; } task: string; complete: boolean; } ================================================ FILE: 02 - Your First Angular App/todo/src/app/todoList.ts ================================================ import { TodoItem } from "./todoItem"; export class TodoList { constructor(public user: string, private todoItems: TodoItem[] = []) { // no statements required } get items(): readonly TodoItem[] { return this.todoItems; } addItem(task: string) { this.todoItems.push(new TodoItem(task)); } } ================================================ FILE: 02 - Your First Angular App/todo/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 02 - Your First Angular App/todo/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 02 - Your First Angular App/todo/src/index.html ================================================ Todo ================================================ FILE: 02 - Your First Angular App/todo/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: 02 - Your First Angular App/todo/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 02 - Your First Angular App/todo/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 02 - Your First Angular App/todo/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 02 - Your First Angular App/todo/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 02 - Your First Angular App/todo/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 02 - Your First Angular App/todo/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 02 - Your First Angular App/todo/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 04 - HTML and CSS Primer/HtmlCssPrimer/index.html ================================================ ToDo

Adam's To Do List

Description Done
Buy FlowersNo
Get ShoesNo
Collect TicketsYes
Call JoeNo
================================================ FILE: 04 - HTML and CSS Primer/HtmlCssPrimer/package.json ================================================ { "dependencies": { "bootstrap": "4.4.1" } } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "JavaScriptPrimer": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/JavaScriptPrimer", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "JavaScriptPrimer:build" }, "configurations": { "production": { "browserTarget": "JavaScriptPrimer:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "JavaScriptPrimer:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "JavaScriptPrimer:serve" }, "configurations": { "production": { "devServerTarget": "JavaScriptPrimer:serve:production" } } } } }}, "defaultProject": "JavaScriptPrimer" } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('JavaScriptPrimer app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/JavaScriptPrimer'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/package.json ================================================ { "name": "java-script-primer", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/node": "^12.11.1", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/app/app.component.css ================================================ ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'JavaScriptPrimer'; } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/index.html ================================================ JavaScriptPrimer ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/main.ts ================================================ let products = [ { name: "Hat", price: 24.5, stock: 10 }, { name: "Kayak", price: 289.99, stock: 1 }, { name: "Soccer Ball", price: 10, stock: 0 }, { name: "Running Shoes", price: 116.50, stock: 20 } ]; let totalValue = products .filter(item => item.stock > 0) .reduce((prev, item) => prev + (item.price * item.stock), 0); console.log("Total value: $" + totalValue.toFixed(2)); ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 05 - JavaScript and TypeScript Primer, Part 1/JavaScriptPrimer/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "JavaScriptPrimer": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/JavaScriptPrimer", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "JavaScriptPrimer:build" }, "configurations": { "production": { "browserTarget": "JavaScriptPrimer:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "JavaScriptPrimer:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "JavaScriptPrimer:serve" }, "configurations": { "production": { "devServerTarget": "JavaScriptPrimer:serve:production" } } } } }}, "defaultProject": "JavaScriptPrimer" } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('JavaScriptPrimer app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/JavaScriptPrimer'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/package.json ================================================ { "name": "java-script-primer", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/node": "^12.11.1", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/app/app.component.css ================================================ ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'JavaScriptPrimer'; } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/index.html ================================================ JavaScriptPrimer ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/main.ts ================================================ let products = [ { name: "Hat", price: 24.5, stock: 10 }, { name: "Kayak", price: 289.99, stock: 1 }, { name: "Soccer Ball", price: 10, stock: 0 }, { name: "Running Shoes", price: 116.50, stock: 20 } ]; let totalValue = products .filter(item => item.stock > 0) .reduce((prev, item) => prev + (item.price * item.stock), 0); console.log("Total value: $" + totalValue.toFixed(2)); ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/Beginning of Chapter/JavaScriptPrimer/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "JavaScriptPrimer": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/JavaScriptPrimer", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "JavaScriptPrimer:build" }, "configurations": { "production": { "browserTarget": "JavaScriptPrimer:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "JavaScriptPrimer:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "JavaScriptPrimer:serve" }, "configurations": { "production": { "devServerTarget": "JavaScriptPrimer:serve:production" } } } } }}, "defaultProject": "JavaScriptPrimer" } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('JavaScriptPrimer app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/JavaScriptPrimer'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/package.json ================================================ { "name": "java-script-primer", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/node": "^12.11.1", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/app/app.component.css ================================================ ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'JavaScriptPrimer'; } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/index.html ================================================ JavaScriptPrimer ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/main.ts ================================================ import { Name, WeatherLocation } from "./modules/NameAndWeather"; import { Name as OtherName } from "./modules/DuplicateName"; import { TempConverter } from "./tempConverter"; let cities: { [index: string]: [string, string] } = {}; cities["London"] = ["raining", TempConverter.convertFtoC("38")]; cities["Paris"] = ["sunny", TempConverter.convertFtoC("52")]; cities["Berlin"] = ["snowing", TempConverter.convertFtoC("23")]; for (let key in cities) { console.log(`${key}: ${cities[key][0]}, ${cities[key][1]}`); } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/modules/DuplicateName.ts ================================================ export class Name { get message() { return "Other Name"; } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/modules/NameAndWeather.ts ================================================ export class Name { constructor(private first: string, private second: string) {} get nameMessage() : string { return `Hello ${this.first} ${this.second}`; } } export class WeatherLocation { constructor(private weather: string, private city: string) {} get weatherMessage() : string { return `It is ${this.weather} in ${this.city}`; } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/tempConverter.ts ================================================ export class TempConverter { static convertFtoC(temp: any): string { let value: number; if ((temp as number).toPrecision) { value = temp; } else if ((temp as string).indexOf) { value = parseFloat(temp); } else { value = 0; } return TempConverter.performCalculation(value).toFixed(1); } private static performCalculation(value: number): number { return (parseFloat(value.toPrecision(2)) - 32) / 1.8; } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 06 - JavaScript and TypeScript Primer, Part 2/End of Chapter/JavaScriptPrimer/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "SportsStore": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/SportsStore", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", "node_modules/@fortawesome/fontawesome-free/css/all.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "SportsStore:build" }, "configurations": { "production": { "browserTarget": "SportsStore:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "SportsStore:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "SportsStore:serve" }, "configurations": { "production": { "devServerTarget": "SportsStore:serve:production" } } } } }}, "defaultProject": "SportsStore" } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/authMiddleware.js ================================================ const jwt = require("jsonwebtoken"); const APP_SECRET = "myappsecret"; const USERNAME = "admin"; const PASSWORD = "secret"; const mappings = { get: ["/api/orders", "/orders"], post: ["/api/products", "/products", "/api/categories", "/categories"] } function requiresAuth(method, url) { return (mappings[method.toLowerCase()] || []) .find(p => url.startsWith(p)) !== undefined; } module.exports = function (req, res, next) { if (req.url.endsWith("/login") && req.method == "POST") { if (req.body && req.body.name == USERNAME && req.body.password == PASSWORD) { let token = jwt.sign({ data: USERNAME, expiresIn: "1h" }, APP_SECRET); res.json({ success: true, token: token }); } else { res.json({ success: false }); } res.end(); return; } else if (requiresAuth(req.method, req.url)) { let token = req.headers["authorization"] || ""; if (token.startsWith("Bearer<")) { token = token.substring(7, token.length - 1); try { jwt.verify(token, APP_SECRET); next(); return; } catch (err) { } } res.statusCode = 401; res.end(); return; } next(); } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/data.js ================================================ module.exports = function () { return { products: [ { id: 1, name: "Kayak", category: "Watersports", description: "A boat for one person", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", description: "Protective and fashionable", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", description: "FIFA-approved size and weight", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", description: "Give your playing field a professional touch", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", description: "Flat-packed 35,000-seat stadium", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", description: "Improve brain efficiency by 75%", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", description: "Secretly give your opponent a disadvantage", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", description: "A fun game for the family", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", description: "Gold-plated, diamond-studded King", price: 1200 } ], orders: [] } } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('SportsStore app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/SportsStore'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/package.json ================================================ { "name": "sports-store", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server data.js -p 3500 -m authMiddleware.js" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "@fortawesome/fontawesome-free": "^5.12.1", "bootstrap": "^4.4.1", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^12.11.1", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "json-server": "^0.16.0", "jsonwebtoken": "^8.5.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/app/app.component.css ================================================ ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'SportsStore'; } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/index.html ================================================ SportsStore SportsStore Will Go Here ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 07 - SportsStore/Beginning of Chapter/SportsStore/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "SportsStore": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/SportsStore", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", "node_modules/@fortawesome/fontawesome-free/css/all.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "SportsStore:build" }, "configurations": { "production": { "browserTarget": "SportsStore:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "SportsStore:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "SportsStore:serve" }, "configurations": { "production": { "devServerTarget": "SportsStore:serve:production" } } } } }}, "defaultProject": "SportsStore" } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/authMiddleware.js ================================================ const jwt = require("jsonwebtoken"); const APP_SECRET = "myappsecret"; const USERNAME = "admin"; const PASSWORD = "secret"; const mappings = { get: ["/api/orders", "/orders"], post: ["/api/products", "/products", "/api/categories", "/categories"] } function requiresAuth(method, url) { return (mappings[method.toLowerCase()] || []) .find(p => url.startsWith(p)) !== undefined; } module.exports = function (req, res, next) { if (req.url.endsWith("/login") && req.method == "POST") { if (req.body && req.body.name == USERNAME && req.body.password == PASSWORD) { let token = jwt.sign({ data: USERNAME, expiresIn: "1h" }, APP_SECRET); res.json({ success: true, token: token }); } else { res.json({ success: false }); } res.end(); return; } else if (requiresAuth(req.method, req.url)) { let token = req.headers["authorization"] || ""; if (token.startsWith("Bearer<")) { token = token.substring(7, token.length - 1); try { jwt.verify(token, APP_SECRET); next(); return; } catch (err) { } } res.statusCode = 401; res.end(); return; } next(); } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/data.js ================================================ module.exports = function () { return { products: [ { id: 1, name: "Kayak", category: "Watersports", description: "A boat for one person", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", description: "Protective and fashionable", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", description: "FIFA-approved size and weight", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", description: "Give your playing field a professional touch", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", description: "Flat-packed 35,000-seat stadium", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", description: "Improve brain efficiency by 75%", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", description: "Secretly give your opponent a disadvantage", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", description: "A fun game for the family", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", description: "Gold-plated, diamond-studded King", price: 1200 } ], orders: [] } } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('SportsStore app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/SportsStore'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/package.json ================================================ { "name": "sports-store", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server data.js -p 3500 -m authMiddleware.js" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "@fortawesome/fontawesome-free": "^5.12.1", "bootstrap": "^4.4.1", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^12.11.1", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "json-server": "^0.16.0", "jsonwebtoken": "^8.5.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/app.component.css ================================================ ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", template: "" }) export class AppComponent { } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { AppComponent } from "./app.component"; import { StoreModule } from "./store/store.module"; @NgModule({ imports: [BrowserModule, StoreModule], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { ProductRepository } from "./product.repository"; import { StaticDataSource } from "./static.datasource"; @NgModule({ providers: [ProductRepository, StaticDataSource] }) export class ModelModule { } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/model/product.model.ts ================================================ export class Product { constructor( public id?: number, public name?: string, public category?: string, public description?: string, public price?: number) { } } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/model/product.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { StaticDataSource } from "./static.datasource"; @Injectable() export class ProductRepository { private products: Product[] = []; private categories: string[] = []; constructor(private dataSource: StaticDataSource) { dataSource.getProducts().subscribe(data => { this.products = data; this.categories = data.map(p => p.category) .filter((c, index, array) => array.indexOf(c) == index).sort(); }); } getProducts(category: string = null): Product[] { return this.products .filter(p => category == null || category == p.category); } getProduct(id: number): Product { return this.products.find(p => p.id == id); } getCategories(): string[] { return this.categories; } } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable, from } from "rxjs"; @Injectable() export class StaticDataSource { private products: Product[] = [ new Product(1, "Product 1", "Category 1", "Product 1 (Category 1)", 100), new Product(2, "Product 2", "Category 1", "Product 2 (Category 1)", 100), new Product(3, "Product 3", "Category 1", "Product 3 (Category 1)", 100), new Product(4, "Product 4", "Category 1", "Product 4 (Category 1)", 100), new Product(5, "Product 5", "Category 1", "Product 5 (Category 1)", 100), new Product(6, "Product 6", "Category 2", "Product 6 (Category 2)", 100), new Product(7, "Product 7", "Category 2", "Product 7 (Category 2)", 100), new Product(8, "Product 8", "Category 2", "Product 8 (Category 2)", 100), new Product(9, "Product 9", "Category 2", "Product 9 (Category 2)", 100), new Product(10, "Product 10", "Category 2", "Product 10 (Category 2)", 100), new Product(11, "Product 11", "Category 3", "Product 11 (Category 3)", 100), new Product(12, "Product 12", "Category 3", "Product 12 (Category 3)", 100), new Product(13, "Product 13", "Category 3", "Product 13 (Category 3)", 100), new Product(14, "Product 14", "Category 3", "Product 14 (Category 3)", 100), new Product(15, "Product 15", "Category 3", "Product 15 (Category 3)", 100), ]; getProducts(): Observable { return from([this.products]); } } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/store/counter.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, Attribute, SimpleChanges } from "@angular/core"; @Directive({ selector: "[counterOf]" }) export class CounterDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("counterOf") counter: number; ngOnChanges(changes: SimpleChanges) { this.container.clear(); for (let i = 0; i < this.counter; i++) { this.container.createEmbeddedView(this.template, new CounterDirectiveContext(i + 1)); } } } class CounterDirectiveContext { constructor(public $implicit: any) { } } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/store/store.component.html ================================================

{{product.name}} {{ product.price | currency:"USD":"symbol":"2.2-2" }}

{{product.description}}
================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/store/store.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; @Component({ selector: "store", templateUrl: "store.component.html" }) export class StoreComponent { public selectedCategory = null; public productsPerPage = 4; public selectedPage = 1; constructor(private repository: ProductRepository) {} get products(): Product[] { let pageIndex = (this.selectedPage - 1) * this.productsPerPage return this.repository.getProducts(this.selectedCategory) .slice(pageIndex, pageIndex + this.productsPerPage); } get categories(): string[] { return this.repository.getCategories(); } changeCategory(newCategory?: string) { this.selectedCategory = newCategory; } changePage(newPage: number) { this.selectedPage = newPage; } changePageSize(newSize: number) { this.productsPerPage = Number(newSize); this.changePage(1); } get pageCount(): number { return Math.ceil(this.repository .getProducts(this.selectedCategory).length / this.productsPerPage) } //get pageNumbers(): number[] { // return Array(Math.ceil(this.repository // .getProducts(this.selectedCategory).length / this.productsPerPage)) // .fill(0).map((x, i) => i + 1); //} } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/app/store/store.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { StoreComponent } from "./store.component"; import { CounterDirective } from "./counter.directive"; @NgModule({ imports: [ModelModule, BrowserModule, FormsModule], declarations: [StoreComponent, CounterDirective], exports: [StoreComponent] }) export class StoreModule { } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/index.html ================================================ SportsStore SportsStore Will Go Here ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 07 - SportsStore/End of Chapter/SportsStore/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "SportsStore": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/SportsStore", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", "node_modules/@fortawesome/fontawesome-free/css/all.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "SportsStore:build" }, "configurations": { "production": { "browserTarget": "SportsStore:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "SportsStore:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "SportsStore:serve" }, "configurations": { "production": { "devServerTarget": "SportsStore:serve:production" } } } } }}, "defaultProject": "SportsStore" } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/authMiddleware.js ================================================ const jwt = require("jsonwebtoken"); const APP_SECRET = "myappsecret"; const USERNAME = "admin"; const PASSWORD = "secret"; const mappings = { get: ["/api/orders", "/orders"], post: ["/api/products", "/products", "/api/categories", "/categories"] } function requiresAuth(method, url) { return (mappings[method.toLowerCase()] || []) .find(p => url.startsWith(p)) !== undefined; } module.exports = function (req, res, next) { if (req.url.endsWith("/login") && req.method == "POST") { if (req.body && req.body.name == USERNAME && req.body.password == PASSWORD) { let token = jwt.sign({ data: USERNAME, expiresIn: "1h" }, APP_SECRET); res.json({ success: true, token: token }); } else { res.json({ success: false }); } res.end(); return; } else if (requiresAuth(req.method, req.url)) { let token = req.headers["authorization"] || ""; if (token.startsWith("Bearer<")) { token = token.substring(7, token.length - 1); try { jwt.verify(token, APP_SECRET); next(); return; } catch (err) { } } res.statusCode = 401; res.end(); return; } next(); } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/data.js ================================================ module.exports = function () { return { products: [ { id: 1, name: "Kayak", category: "Watersports", description: "A boat for one person", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", description: "Protective and fashionable", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", description: "FIFA-approved size and weight", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", description: "Give your playing field a professional touch", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", description: "Flat-packed 35,000-seat stadium", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", description: "Improve brain efficiency by 75%", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", description: "Secretly give your opponent a disadvantage", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", description: "A fun game for the family", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", description: "Gold-plated, diamond-studded King", price: 1200 } ], orders: [] } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('SportsStore app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/SportsStore'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/package.json ================================================ { "name": "sports-store", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server data.js -p 3500 -m authMiddleware.js" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "@fortawesome/fontawesome-free": "^5.12.1", "bootstrap": "^4.4.1", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^12.11.1", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "json-server": "^0.16.0", "jsonwebtoken": "^8.5.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/app.component.css ================================================ ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", template: "" }) export class AppComponent { } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { AppComponent } from "./app.component"; import { StoreModule } from "./store/store.module"; @NgModule({ imports: [BrowserModule, StoreModule], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { ProductRepository } from "./product.repository"; import { StaticDataSource } from "./static.datasource"; @NgModule({ providers: [ProductRepository, StaticDataSource] }) export class ModelModule { } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/model/product.model.ts ================================================ export class Product { constructor( public id?: number, public name?: string, public category?: string, public description?: string, public price?: number) { } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/model/product.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { StaticDataSource } from "./static.datasource"; @Injectable() export class ProductRepository { private products: Product[] = []; private categories: string[] = []; constructor(private dataSource: StaticDataSource) { dataSource.getProducts().subscribe(data => { this.products = data; this.categories = data.map(p => p.category) .filter((c, index, array) => array.indexOf(c) == index).sort(); }); } getProducts(category: string = null): Product[] { return this.products .filter(p => category == null || category == p.category); } getProduct(id: number): Product { return this.products.find(p => p.id == id); } getCategories(): string[] { return this.categories; } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable, from } from "rxjs"; @Injectable() export class StaticDataSource { private products: Product[] = [ new Product(1, "Product 1", "Category 1", "Product 1 (Category 1)", 100), new Product(2, "Product 2", "Category 1", "Product 2 (Category 1)", 100), new Product(3, "Product 3", "Category 1", "Product 3 (Category 1)", 100), new Product(4, "Product 4", "Category 1", "Product 4 (Category 1)", 100), new Product(5, "Product 5", "Category 1", "Product 5 (Category 1)", 100), new Product(6, "Product 6", "Category 2", "Product 6 (Category 2)", 100), new Product(7, "Product 7", "Category 2", "Product 7 (Category 2)", 100), new Product(8, "Product 8", "Category 2", "Product 8 (Category 2)", 100), new Product(9, "Product 9", "Category 2", "Product 9 (Category 2)", 100), new Product(10, "Product 10", "Category 2", "Product 10 (Category 2)", 100), new Product(11, "Product 11", "Category 3", "Product 11 (Category 3)", 100), new Product(12, "Product 12", "Category 3", "Product 12 (Category 3)", 100), new Product(13, "Product 13", "Category 3", "Product 13 (Category 3)", 100), new Product(14, "Product 14", "Category 3", "Product 14 (Category 3)", 100), new Product(15, "Product 15", "Category 3", "Product 15 (Category 3)", 100), ]; getProducts(): Observable { return from([this.products]); } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/store/counter.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, Attribute, SimpleChanges } from "@angular/core"; @Directive({ selector: "[counterOf]" }) export class CounterDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("counterOf") counter: number; ngOnChanges(changes: SimpleChanges) { this.container.clear(); for (let i = 0; i < this.counter; i++) { this.container.createEmbeddedView(this.template, new CounterDirectiveContext(i + 1)); } } } class CounterDirectiveContext { constructor(public $implicit: any) { } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/store/store.component.html ================================================

{{product.name}} {{ product.price | currency:"USD":"symbol":"2.2-2" }}

{{product.description}}
================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/store/store.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; @Component({ selector: "store", templateUrl: "store.component.html" }) export class StoreComponent { public selectedCategory = null; public productsPerPage = 4; public selectedPage = 1; constructor(private repository: ProductRepository) {} get products(): Product[] { let pageIndex = (this.selectedPage - 1) * this.productsPerPage return this.repository.getProducts(this.selectedCategory) .slice(pageIndex, pageIndex + this.productsPerPage); } get categories(): string[] { return this.repository.getCategories(); } changeCategory(newCategory?: string) { this.selectedCategory = newCategory; } changePage(newPage: number) { this.selectedPage = newPage; } changePageSize(newSize: number) { this.productsPerPage = Number(newSize); this.changePage(1); } get pageCount(): number { return Math.ceil(this.repository .getProducts(this.selectedCategory).length / this.productsPerPage) } //get pageNumbers(): number[] { // return Array(Math.ceil(this.repository // .getProducts(this.selectedCategory).length / this.productsPerPage)) // .fill(0).map((x, i) => i + 1); //} } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/app/store/store.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { StoreComponent } from "./store.component"; import { CounterDirective } from "./counter.directive"; @NgModule({ imports: [ModelModule, BrowserModule, FormsModule], declarations: [StoreComponent, CounterDirective], exports: [StoreComponent] }) export class StoreModule { } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/index.html ================================================ SportsStore SportsStore Will Go Here ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 08 - SportsStore - Orders and Checkout/Beginning of Chapter/SportsStore/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "SportsStore": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/SportsStore", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", "node_modules/@fortawesome/fontawesome-free/css/all.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "SportsStore:build" }, "configurations": { "production": { "browserTarget": "SportsStore:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "SportsStore:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "SportsStore:serve" }, "configurations": { "production": { "devServerTarget": "SportsStore:serve:production" } } } } }}, "defaultProject": "SportsStore" } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/authMiddleware.js ================================================ const jwt = require("jsonwebtoken"); const APP_SECRET = "myappsecret"; const USERNAME = "admin"; const PASSWORD = "secret"; const mappings = { get: ["/api/orders", "/orders"], post: ["/api/products", "/products", "/api/categories", "/categories"] } function requiresAuth(method, url) { return (mappings[method.toLowerCase()] || []) .find(p => url.startsWith(p)) !== undefined; } module.exports = function (req, res, next) { if (req.url.endsWith("/login") && req.method == "POST") { if (req.body && req.body.name == USERNAME && req.body.password == PASSWORD) { let token = jwt.sign({ data: USERNAME, expiresIn: "1h" }, APP_SECRET); res.json({ success: true, token: token }); } else { res.json({ success: false }); } res.end(); return; } else if (requiresAuth(req.method, req.url)) { let token = req.headers["authorization"] || ""; if (token.startsWith("Bearer<")) { token = token.substring(7, token.length - 1); try { jwt.verify(token, APP_SECRET); next(); return; } catch (err) { } } res.statusCode = 401; res.end(); return; } next(); } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/data.js ================================================ module.exports = function () { return { products: [ { id: 1, name: "Kayak", category: "Watersports", description: "A boat for one person", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", description: "Protective and fashionable", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", description: "FIFA-approved size and weight", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", description: "Give your playing field a professional touch", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", description: "Flat-packed 35,000-seat stadium", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", description: "Improve brain efficiency by 75%", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", description: "Secretly give your opponent a disadvantage", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", description: "A fun game for the family", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", description: "Gold-plated, diamond-studded King", price: 1200 } ], orders: [] } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('SportsStore app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/SportsStore'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/package.json ================================================ { "name": "sports-store", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server data.js -p 3500 -m authMiddleware.js" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "@fortawesome/fontawesome-free": "^5.12.1", "bootstrap": "^4.4.1", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^12.11.1", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "json-server": "^0.16.0", "jsonwebtoken": "^8.5.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/app.component.css ================================================ ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", template: "" }) export class AppComponent { } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { AppComponent } from "./app.component"; import { StoreModule } from "./store/store.module"; import { StoreComponent } from "./store/store.component"; import { CheckoutComponent } from "./store/checkout.component"; import { CartDetailComponent } from "./store/cartDetail.component"; import { RouterModule } from "@angular/router"; import { StoreFirstGuard } from "./storeFirst.guard"; @NgModule({ imports: [BrowserModule, StoreModule, RouterModule.forRoot([ { path: "store", component: StoreComponent, canActivate: [StoreFirstGuard] }, { path: "cart", component: CartDetailComponent, canActivate: [StoreFirstGuard] }, { path: "checkout", component: CheckoutComponent, canActivate: [StoreFirstGuard] }, { path: "**", redirectTo: "/store" } ])], providers: [StoreFirstGuard], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/model/cart.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class Cart { public lines: CartLine[] = []; public itemCount: number = 0; public cartPrice: number = 0; addLine(product: Product, quantity: number = 1) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity += quantity; } else { this.lines.push(new CartLine(product, quantity)); } this.recalculate(); } updateQuantity(product: Product, quantity: number) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity = Number(quantity); } this.recalculate(); } removeLine(id: number) { let index = this.lines.findIndex(line => line.product.id == id); this.lines.splice(index, 1); this.recalculate(); } clear() { this.lines = []; this.itemCount = 0; this.cartPrice = 0; } private recalculate() { this.itemCount = 0; this.cartPrice = 0; this.lines.forEach(l => { this.itemCount += l.quantity; this.cartPrice += (l.quantity * l.product.price); }) } } export class CartLine { constructor(public product: Product, public quantity: number) {} get lineTotal() { return this.quantity * this.product.price; } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { ProductRepository } from "./product.repository"; import { StaticDataSource } from "./static.datasource"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; import { OrderRepository } from "./order.repository"; import { RestDataSource } from "./rest.datasource"; import { HttpClientModule } from "@angular/common/http"; @NgModule({ imports: [HttpClientModule], providers: [ProductRepository, Cart, Order, OrderRepository, { provide: StaticDataSource, useClass: RestDataSource }] }) export class ModelModule { } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/model/order.model.ts ================================================ import { Injectable } from "@angular/core"; import { Cart } from "./cart.model"; @Injectable() export class Order { public id: number; public name: string; public address: string; public city: string; public state: string; public zip: string; public country: string; public shipped: boolean = false; constructor(public cart: Cart) { } clear() { this.id = null; this.name = this.address = this.city = null; this.state = this.zip = this.country = null; this.shipped = false; this.cart.clear(); } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/model/order.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Observable } from "rxjs"; import { Order } from "./order.model"; import { StaticDataSource } from "./static.datasource"; @Injectable() export class OrderRepository { private orders: Order[] = []; constructor(private dataSource: StaticDataSource) {} getOrders(): Order[] { return this.orders; } saveOrder(order: Order): Observable { return this.dataSource.saveOrder(order); } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/model/product.model.ts ================================================ export class Product { constructor( public id?: number, public name?: string, public category?: string, public description?: string, public price?: number) { } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/model/product.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { StaticDataSource } from "./static.datasource"; @Injectable() export class ProductRepository { private products: Product[] = []; private categories: string[] = []; constructor(private dataSource: StaticDataSource) { dataSource.getProducts().subscribe(data => { this.products = data; this.categories = data.map(p => p.category) .filter((c, index, array) => array.indexOf(c) == index).sort(); }); } getProducts(category: string = null): Product[] { return this.products .filter(p => category == null || category == p.category); } getProduct(id: number): Product { return this.products.find(p => p.id == id); } getCategories(): string[] { return this.categories; } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/model/rest.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { HttpClient } from "@angular/common/http"; import { Observable } from "rxjs"; import { Product } from "./product.model"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; const PROTOCOL = "http"; const PORT = 3500; @Injectable() export class RestDataSource { baseUrl: string; constructor(private http: HttpClient) { this.baseUrl = `${PROTOCOL}://${location.hostname}:${PORT}/`; } getProducts(): Observable { return this.http.get(this.baseUrl + "products"); } saveOrder(order: Order): Observable { return this.http.post(this.baseUrl + "orders", order); } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable, from } from "rxjs"; import { Order } from "./order.model"; @Injectable() export class StaticDataSource { private products: Product[] = [ new Product(1, "Product 1", "Category 1", "Product 1 (Category 1)", 100), new Product(2, "Product 2", "Category 1", "Product 2 (Category 1)", 100), new Product(3, "Product 3", "Category 1", "Product 3 (Category 1)", 100), new Product(4, "Product 4", "Category 1", "Product 4 (Category 1)", 100), new Product(5, "Product 5", "Category 1", "Product 5 (Category 1)", 100), new Product(6, "Product 6", "Category 2", "Product 6 (Category 2)", 100), new Product(7, "Product 7", "Category 2", "Product 7 (Category 2)", 100), new Product(8, "Product 8", "Category 2", "Product 8 (Category 2)", 100), new Product(9, "Product 9", "Category 2", "Product 9 (Category 2)", 100), new Product(10, "Product 10", "Category 2", "Product 10 (Category 2)", 100), new Product(11, "Product 11", "Category 3", "Product 11 (Category 3)", 100), new Product(12, "Product 12", "Category 3", "Product 12 (Category 3)", 100), new Product(13, "Product 13", "Category 3", "Product 13 (Category 3)", 100), new Product(14, "Product 14", "Category 3", "Product 14 (Category 3)", 100), new Product(15, "Product 15", "Category 3", "Product 15 (Category 3)", 100), ]; getProducts(): Observable { return from([this.products]); } saveOrder(order: Order): Observable { console.log(JSON.stringify(order)); return from([order]); } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/cartDetail.component.html ================================================

Your Cart

Quantity Product Price Subtotal
Your cart is empty
{{line.product.name}} {{line.product.price | currency:"USD":"symbol":"2.2-2"}} {{(line.lineTotal) | currency:"USD":"symbol":"2.2-2" }}
Total: {{cart.cartPrice | currency:"USD":"symbol":"2.2-2"}}
================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/cartDetail.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; @Component({ templateUrl: "cartDetail.component.html" }) export class CartDetailComponent { constructor(public cart: Cart) { } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/cartSummary.component.html ================================================
Your cart: {{ cart.itemCount }} item(s) {{ cart.cartPrice | currency:"USD":"symbol":"2.2-2" }} (empty)
================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/cartSummary.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; @Component({ selector: "cart-summary", templateUrl: "cartSummary.component.html" }) export class CartSummaryComponent { constructor(public cart: Cart) { } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/checkout.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/checkout.component.html ================================================

Thanks!

Thanks for placing your order.

We'll ship your goods as soon as possible.

Please enter your name
Please enter your address
Please enter your city
Please enter your state
Please enter your zip/postal code
Please enter your country
================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/checkout.component.ts ================================================ import { Component } from "@angular/core"; import { NgForm } from "@angular/forms"; import { OrderRepository } from "../model/order.repository"; import { Order } from "../model/order.model"; @Component({ templateUrl: "checkout.component.html", styleUrls: ["checkout.component.css"] }) export class CheckoutComponent { orderSent: boolean = false; submitted: boolean = false; constructor(public repository: OrderRepository, public order: Order) {} submitOrder(form: NgForm) { this.submitted = true; if (form.valid) { this.repository.saveOrder(this.order).subscribe(order => { this.order.clear(); this.orderSent = true; this.submitted = false; }); } } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/counter.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, Attribute, SimpleChanges } from "@angular/core"; @Directive({ selector: "[counterOf]" }) export class CounterDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("counterOf") counter: number; ngOnChanges(changes: SimpleChanges) { this.container.clear(); for (let i = 0; i < this.counter; i++) { this.container.createEmbeddedView(this.template, new CounterDirectiveContext(i + 1)); } } } class CounterDirectiveContext { constructor(public $implicit: any) { } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/store.component.html ================================================

{{product.name}} {{ product.price | currency:"USD":"symbol":"2.2-2" }}

{{product.description}}
================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/store.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; import { Cart } from "../model/cart.model"; import { Router } from "@angular/router"; @Component({ selector: "store", templateUrl: "store.component.html" }) export class StoreComponent { public selectedCategory = null; public productsPerPage = 4; public selectedPage = 1; constructor(private repository: ProductRepository, private cart: Cart, private router: Router) { } get products(): Product[] { let pageIndex = (this.selectedPage - 1) * this.productsPerPage return this.repository.getProducts(this.selectedCategory) .slice(pageIndex, pageIndex + this.productsPerPage); } get categories(): string[] { return this.repository.getCategories(); } changeCategory(newCategory?: string) { this.selectedCategory = newCategory; } changePage(newPage: number) { this.selectedPage = newPage; } changePageSize(newSize: number) { this.productsPerPage = Number(newSize); this.changePage(1); } get pageCount(): number { return Math.ceil(this.repository .getProducts(this.selectedCategory).length / this.productsPerPage) } addProductToCart(product: Product) { this.cart.addLine(product); this.router.navigateByUrl("/cart"); } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/store/store.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { StoreComponent } from "./store.component"; import { CounterDirective } from "./counter.directive"; import { CartSummaryComponent } from "./cartSummary.component"; import { CartDetailComponent } from "./cartDetail.component"; import { CheckoutComponent } from "./checkout.component"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [ModelModule, BrowserModule, FormsModule, RouterModule], declarations: [StoreComponent, CounterDirective, CartSummaryComponent, CartDetailComponent, CheckoutComponent], exports: [StoreComponent, CartDetailComponent, CheckoutComponent] }) export class StoreModule { } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/app/storeFirst.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { StoreComponent } from "./store/store.component"; @Injectable() export class StoreFirstGuard { private firstNavigation = true; constructor(private router: Router) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { if (this.firstNavigation) { this.firstNavigation = false; if (route.component != StoreComponent) { this.router.navigateByUrl("/"); return false; } } return true; } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/index.html ================================================ SportsStore SportsStore Will Go Here ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 08 - SportsStore - Orders and Checkout/End of Chapter/SportsStore/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "SportsStore": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/SportsStore", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", "node_modules/@fortawesome/fontawesome-free/css/all.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "SportsStore:build" }, "configurations": { "production": { "browserTarget": "SportsStore:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "SportsStore:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "SportsStore:serve" }, "configurations": { "production": { "devServerTarget": "SportsStore:serve:production" } } } } }}, "defaultProject": "SportsStore" } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/authMiddleware.js ================================================ const jwt = require("jsonwebtoken"); const APP_SECRET = "myappsecret"; const USERNAME = "admin"; const PASSWORD = "secret"; const mappings = { get: ["/api/orders", "/orders"], post: ["/api/products", "/products", "/api/categories", "/categories"] } function requiresAuth(method, url) { return (mappings[method.toLowerCase()] || []) .find(p => url.startsWith(p)) !== undefined; } module.exports = function (req, res, next) { if (req.url.endsWith("/login") && req.method == "POST") { if (req.body && req.body.name == USERNAME && req.body.password == PASSWORD) { let token = jwt.sign({ data: USERNAME, expiresIn: "1h" }, APP_SECRET); res.json({ success: true, token: token }); } else { res.json({ success: false }); } res.end(); return; } else if (requiresAuth(req.method, req.url)) { let token = req.headers["authorization"] || ""; if (token.startsWith("Bearer<")) { token = token.substring(7, token.length - 1); try { jwt.verify(token, APP_SECRET); next(); return; } catch (err) { } } res.statusCode = 401; res.end(); return; } next(); } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/data.js ================================================ module.exports = function () { return { products: [ { id: 1, name: "Kayak", category: "Watersports", description: "A boat for one person", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", description: "Protective and fashionable", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", description: "FIFA-approved size and weight", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", description: "Give your playing field a professional touch", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", description: "Flat-packed 35,000-seat stadium", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", description: "Improve brain efficiency by 75%", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", description: "Secretly give your opponent a disadvantage", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", description: "A fun game for the family", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", description: "Gold-plated, diamond-studded King", price: 1200 } ], orders: [] } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('SportsStore app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/SportsStore'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/package.json ================================================ { "name": "sports-store", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server data.js -p 3500 -m authMiddleware.js" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "@fortawesome/fontawesome-free": "^5.12.1", "bootstrap": "^4.4.1", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^12.11.1", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "json-server": "^0.16.0", "jsonwebtoken": "^8.5.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/app.component.css ================================================ ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", template: "" }) export class AppComponent { } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { AppComponent } from "./app.component"; import { StoreModule } from "./store/store.module"; import { StoreComponent } from "./store/store.component"; import { CheckoutComponent } from "./store/checkout.component"; import { CartDetailComponent } from "./store/cartDetail.component"; import { RouterModule } from "@angular/router"; import { StoreFirstGuard } from "./storeFirst.guard"; @NgModule({ imports: [BrowserModule, StoreModule, RouterModule.forRoot([ { path: "store", component: StoreComponent, canActivate: [StoreFirstGuard] }, { path: "cart", component: CartDetailComponent, canActivate: [StoreFirstGuard] }, { path: "checkout", component: CheckoutComponent, canActivate: [StoreFirstGuard] }, { path: "**", redirectTo: "/store" } ])], providers: [StoreFirstGuard], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/model/cart.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class Cart { public lines: CartLine[] = []; public itemCount: number = 0; public cartPrice: number = 0; addLine(product: Product, quantity: number = 1) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity += quantity; } else { this.lines.push(new CartLine(product, quantity)); } this.recalculate(); } updateQuantity(product: Product, quantity: number) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity = Number(quantity); } this.recalculate(); } removeLine(id: number) { let index = this.lines.findIndex(line => line.product.id == id); this.lines.splice(index, 1); this.recalculate(); } clear() { this.lines = []; this.itemCount = 0; this.cartPrice = 0; } private recalculate() { this.itemCount = 0; this.cartPrice = 0; this.lines.forEach(l => { this.itemCount += l.quantity; this.cartPrice += (l.quantity * l.product.price); }) } } export class CartLine { constructor(public product: Product, public quantity: number) {} get lineTotal() { return this.quantity * this.product.price; } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { ProductRepository } from "./product.repository"; import { StaticDataSource } from "./static.datasource"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; import { OrderRepository } from "./order.repository"; import { RestDataSource } from "./rest.datasource"; import { HttpClientModule } from "@angular/common/http"; @NgModule({ imports: [HttpClientModule], providers: [ProductRepository, Cart, Order, OrderRepository, { provide: StaticDataSource, useClass: RestDataSource }] }) export class ModelModule { } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/model/order.model.ts ================================================ import { Injectable } from "@angular/core"; import { Cart } from "./cart.model"; @Injectable() export class Order { public id: number; public name: string; public address: string; public city: string; public state: string; public zip: string; public country: string; public shipped: boolean = false; constructor(public cart: Cart) { } clear() { this.id = null; this.name = this.address = this.city = null; this.state = this.zip = this.country = null; this.shipped = false; this.cart.clear(); } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/model/order.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Observable } from "rxjs"; import { Order } from "./order.model"; import { StaticDataSource } from "./static.datasource"; @Injectable() export class OrderRepository { private orders: Order[] = []; constructor(private dataSource: StaticDataSource) {} getOrders(): Order[] { return this.orders; } saveOrder(order: Order): Observable { return this.dataSource.saveOrder(order); } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/model/product.model.ts ================================================ export class Product { constructor( public id?: number, public name?: string, public category?: string, public description?: string, public price?: number) { } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/model/product.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { StaticDataSource } from "./static.datasource"; @Injectable() export class ProductRepository { private products: Product[] = []; private categories: string[] = []; constructor(private dataSource: StaticDataSource) { dataSource.getProducts().subscribe(data => { this.products = data; this.categories = data.map(p => p.category) .filter((c, index, array) => array.indexOf(c) == index).sort(); }); } getProducts(category: string = null): Product[] { return this.products .filter(p => category == null || category == p.category); } getProduct(id: number): Product { return this.products.find(p => p.id == id); } getCategories(): string[] { return this.categories; } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/model/rest.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { HttpClient } from "@angular/common/http"; import { Observable } from "rxjs"; import { Product } from "./product.model"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; const PROTOCOL = "http"; const PORT = 3500; @Injectable() export class RestDataSource { baseUrl: string; constructor(private http: HttpClient) { this.baseUrl = `${PROTOCOL}://${location.hostname}:${PORT}/`; } getProducts(): Observable { return this.http.get(this.baseUrl + "products"); } saveOrder(order: Order): Observable { return this.http.post(this.baseUrl + "orders", order); } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable, from } from "rxjs"; import { Order } from "./order.model"; @Injectable() export class StaticDataSource { private products: Product[] = [ new Product(1, "Product 1", "Category 1", "Product 1 (Category 1)", 100), new Product(2, "Product 2", "Category 1", "Product 2 (Category 1)", 100), new Product(3, "Product 3", "Category 1", "Product 3 (Category 1)", 100), new Product(4, "Product 4", "Category 1", "Product 4 (Category 1)", 100), new Product(5, "Product 5", "Category 1", "Product 5 (Category 1)", 100), new Product(6, "Product 6", "Category 2", "Product 6 (Category 2)", 100), new Product(7, "Product 7", "Category 2", "Product 7 (Category 2)", 100), new Product(8, "Product 8", "Category 2", "Product 8 (Category 2)", 100), new Product(9, "Product 9", "Category 2", "Product 9 (Category 2)", 100), new Product(10, "Product 10", "Category 2", "Product 10 (Category 2)", 100), new Product(11, "Product 11", "Category 3", "Product 11 (Category 3)", 100), new Product(12, "Product 12", "Category 3", "Product 12 (Category 3)", 100), new Product(13, "Product 13", "Category 3", "Product 13 (Category 3)", 100), new Product(14, "Product 14", "Category 3", "Product 14 (Category 3)", 100), new Product(15, "Product 15", "Category 3", "Product 15 (Category 3)", 100), ]; getProducts(): Observable { return from([this.products]); } saveOrder(order: Order): Observable { console.log(JSON.stringify(order)); return from([order]); } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/cartDetail.component.html ================================================

Your Cart

Quantity Product Price Subtotal
Your cart is empty
{{line.product.name}} {{line.product.price | currency:"USD":"symbol":"2.2-2"}} {{(line.lineTotal) | currency:"USD":"symbol":"2.2-2" }}
Total: {{cart.cartPrice | currency:"USD":"symbol":"2.2-2"}}
================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/cartDetail.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; @Component({ templateUrl: "cartDetail.component.html" }) export class CartDetailComponent { constructor(public cart: Cart) { } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/cartSummary.component.html ================================================
Your cart: {{ cart.itemCount }} item(s) {{ cart.cartPrice | currency:"USD":"symbol":"2.2-2" }} (empty)
================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/cartSummary.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; @Component({ selector: "cart-summary", templateUrl: "cartSummary.component.html" }) export class CartSummaryComponent { constructor(public cart: Cart) { } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/checkout.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/checkout.component.html ================================================

Thanks!

Thanks for placing your order.

We'll ship your goods as soon as possible.

Please enter your name
Please enter your address
Please enter your city
Please enter your state
Please enter your zip/postal code
Please enter your country
================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/checkout.component.ts ================================================ import { Component } from "@angular/core"; import { NgForm } from "@angular/forms"; import { OrderRepository } from "../model/order.repository"; import { Order } from "../model/order.model"; @Component({ templateUrl: "checkout.component.html", styleUrls: ["checkout.component.css"] }) export class CheckoutComponent { orderSent: boolean = false; submitted: boolean = false; constructor(public repository: OrderRepository, public order: Order) {} submitOrder(form: NgForm) { this.submitted = true; if (form.valid) { this.repository.saveOrder(this.order).subscribe(order => { this.order.clear(); this.orderSent = true; this.submitted = false; }); } } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/counter.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, Attribute, SimpleChanges } from "@angular/core"; @Directive({ selector: "[counterOf]" }) export class CounterDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("counterOf") counter: number; ngOnChanges(changes: SimpleChanges) { this.container.clear(); for (let i = 0; i < this.counter; i++) { this.container.createEmbeddedView(this.template, new CounterDirectiveContext(i + 1)); } } } class CounterDirectiveContext { constructor(public $implicit: any) { } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/store.component.html ================================================

{{product.name}} {{ product.price | currency:"USD":"symbol":"2.2-2" }}

{{product.description}}
================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/store.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; import { Cart } from "../model/cart.model"; import { Router } from "@angular/router"; @Component({ selector: "store", templateUrl: "store.component.html" }) export class StoreComponent { public selectedCategory = null; public productsPerPage = 4; public selectedPage = 1; constructor(private repository: ProductRepository, private cart: Cart, private router: Router) { } get products(): Product[] { let pageIndex = (this.selectedPage - 1) * this.productsPerPage return this.repository.getProducts(this.selectedCategory) .slice(pageIndex, pageIndex + this.productsPerPage); } get categories(): string[] { return this.repository.getCategories(); } changeCategory(newCategory?: string) { this.selectedCategory = newCategory; } changePage(newPage: number) { this.selectedPage = newPage; } changePageSize(newSize: number) { this.productsPerPage = Number(newSize); this.changePage(1); } get pageCount(): number { return Math.ceil(this.repository .getProducts(this.selectedCategory).length / this.productsPerPage) } addProductToCart(product: Product) { this.cart.addLine(product); this.router.navigateByUrl("/cart"); } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/store/store.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { StoreComponent } from "./store.component"; import { CounterDirective } from "./counter.directive"; import { CartSummaryComponent } from "./cartSummary.component"; import { CartDetailComponent } from "./cartDetail.component"; import { CheckoutComponent } from "./checkout.component"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [ModelModule, BrowserModule, FormsModule, RouterModule], declarations: [StoreComponent, CounterDirective, CartSummaryComponent, CartDetailComponent, CheckoutComponent], exports: [StoreComponent, CartDetailComponent, CheckoutComponent] }) export class StoreModule { } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/app/storeFirst.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { StoreComponent } from "./store/store.component"; @Injectable() export class StoreFirstGuard { private firstNavigation = true; constructor(private router: Router) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { if (this.firstNavigation) { this.firstNavigation = false; if (route.component != StoreComponent) { this.router.navigateByUrl("/"); return false; } } return true; } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/index.html ================================================ SportsStore SportsStore Will Go Here ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 09 - SportsStore - Admin/Beginning of Chapter/SportsStore/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "SportsStore": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/SportsStore", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", "node_modules/@fortawesome/fontawesome-free/css/all.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "SportsStore:build" }, "configurations": { "production": { "browserTarget": "SportsStore:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "SportsStore:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "SportsStore:serve" }, "configurations": { "production": { "devServerTarget": "SportsStore:serve:production" } } } } }}, "defaultProject": "SportsStore" } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/authMiddleware.js ================================================ const jwt = require("jsonwebtoken"); const APP_SECRET = "myappsecret"; const USERNAME = "admin"; const PASSWORD = "secret"; const mappings = { get: ["/api/orders", "/orders"], post: ["/api/products", "/products", "/api/categories", "/categories"] } function requiresAuth(method, url) { return (mappings[method.toLowerCase()] || []) .find(p => url.startsWith(p)) !== undefined; } module.exports = function (req, res, next) { if (req.url.endsWith("/login") && req.method == "POST") { if (req.body && req.body.name == USERNAME && req.body.password == PASSWORD) { let token = jwt.sign({ data: USERNAME, expiresIn: "1h" }, APP_SECRET); res.json({ success: true, token: token }); } else { res.json({ success: false }); } res.end(); return; } else if (requiresAuth(req.method, req.url)) { let token = req.headers["authorization"] || ""; if (token.startsWith("Bearer<")) { token = token.substring(7, token.length - 1); try { jwt.verify(token, APP_SECRET); next(); return; } catch (err) { } } res.statusCode = 401; res.end(); return; } next(); } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/data.js ================================================ module.exports = function () { return { products: [ { id: 1, name: "Kayak", category: "Watersports", description: "A boat for one person", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", description: "Protective and fashionable", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", description: "FIFA-approved size and weight", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", description: "Give your playing field a professional touch", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", description: "Flat-packed 35,000-seat stadium", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", description: "Improve brain efficiency by 75%", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", description: "Secretly give your opponent a disadvantage", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", description: "A fun game for the family", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", description: "Gold-plated, diamond-studded King", price: 1200 } ], orders: [] } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('SportsStore app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/SportsStore'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/package.json ================================================ { "name": "sports-store", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server data.js -p 3500 -m authMiddleware.js" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "@fortawesome/fontawesome-free": "^5.12.1", "bootstrap": "^4.4.1", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^12.11.1", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "json-server": "^0.16.0", "jsonwebtoken": "^8.5.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/admin.component.html ================================================
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/admin.component.ts ================================================ import { Component } from "@angular/core"; import { Router } from "@angular/router"; import { AuthService } from "../model/auth.service"; @Component({ templateUrl: "admin.component.html" }) export class AdminComponent { constructor(private auth: AuthService, private router: Router) { } logout() { this.auth.clear(); this.router.navigateByUrl("/"); } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/admin.module.ts ================================================ import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; import { FormsModule } from "@angular/forms"; import { RouterModule } from "@angular/router"; import { AuthComponent } from "./auth.component"; import { AdminComponent } from "./admin.component"; import { AuthGuard } from "./auth.guard"; import { ProductTableComponent } from "./productTable.component"; import { ProductEditorComponent } from "./productEditor.component"; import { OrderTableComponent } from "./orderTable.component"; let routing = RouterModule.forChild([ { path: "auth", component: AuthComponent }, { path: "main", component: AdminComponent, canActivate: [AuthGuard], children: [ { path: "products/:mode/:id", component: ProductEditorComponent }, { path: "products/:mode", component: ProductEditorComponent }, { path: "products", component: ProductTableComponent }, { path: "orders", component: OrderTableComponent }, { path: "**", redirectTo: "products" } ] }, { path: "**", redirectTo: "auth" } ]); @NgModule({ imports: [CommonModule, FormsModule, routing], providers: [AuthGuard], declarations: [AuthComponent, AdminComponent, ProductTableComponent, ProductEditorComponent, OrderTableComponent] }) export class AdminModule {} ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/auth.component.html ================================================

SportsStore Admin

{{errorMessage}}
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/auth.component.ts ================================================ import { Component } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Router } from "@angular/router"; import { AuthService } from "../model/auth.service"; @Component({ templateUrl: "auth.component.html" }) export class AuthComponent { public username: string; public password: string; public errorMessage: string; constructor(private router: Router, private auth: AuthService) { } authenticate(form: NgForm) { if (form.valid) { this.auth.authenticate(this.username, this.password) .subscribe(response => { if (response) { this.router.navigateByUrl("/admin/main"); } this.errorMessage = "Authentication Failed"; }) } else { this.errorMessage = "Form Data Invalid"; } } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/auth.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { AuthService } from "../model/auth.service"; @Injectable() export class AuthGuard { constructor(private router: Router, private auth: AuthService) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { if (!this.auth.authenticated) { this.router.navigateByUrl("/admin/auth"); return false; } return true; } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/orderTable.component.html ================================================
NameZipCart
There are no orders
{{o.name}}{{o.zip}} ProductQuantity
{{line.product.name}} {{line.quantity}}
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/orderTable.component.ts ================================================ import { Component } from "@angular/core"; import { Order } from "../model/order.model"; import { OrderRepository } from "../model/order.repository"; @Component({ templateUrl: "orderTable.component.html" }) export class OrderTableComponent { includeShipped = false; constructor(private repository: OrderRepository) {} getOrders(): Order[] { return this.repository.getOrders() .filter(o => this.includeShipped || !o.shipped); } markShipped(order: Order) { order.shipped = true; this.repository.updateOrder(order); } delete(id: number) { this.repository.deleteOrder(id); } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/productEditor.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/productEditor.component.ts ================================================ import { Component } from "@angular/core"; import { Router, ActivatedRoute } from "@angular/router"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; @Component({ templateUrl: "productEditor.component.html" }) export class ProductEditorComponent { editing: boolean = false; product: Product = new Product(); constructor(private repository: ProductRepository, private router: Router, activeRoute: ActivatedRoute) { this.editing = activeRoute.snapshot.params["mode"] == "edit"; if (this.editing) { Object.assign(this.product, repository.getProduct(activeRoute.snapshot.params["id"])); } } save(form: NgForm) { this.repository.saveProduct(this.product); this.router.navigateByUrl("/admin/main/products"); } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/productTable.component.html ================================================
IDNameCategoryPrice
{{p.id}} {{p.name}} {{p.category}} {{p.price | currency:"USD":"symbol":"2.2-2"}}
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/admin/productTable.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; @Component({ templateUrl: "productTable.component.html" }) export class ProductTableComponent { constructor(private repository: ProductRepository) { } getProducts(): Product[] { return this.repository.getProducts(); } deleteProduct(id: number) { this.repository.deleteProduct(id); } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/app.component.css ================================================ ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", template: "" }) export class AppComponent { } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { AppComponent } from "./app.component"; import { StoreModule } from "./store/store.module"; import { StoreComponent } from "./store/store.component"; import { CheckoutComponent } from "./store/checkout.component"; import { CartDetailComponent } from "./store/cartDetail.component"; import { RouterModule } from "@angular/router"; import { StoreFirstGuard } from "./storeFirst.guard"; @NgModule({ imports: [BrowserModule, StoreModule, RouterModule.forRoot([ { path: "store", component: StoreComponent, canActivate: [StoreFirstGuard] }, { path: "cart", component: CartDetailComponent, canActivate: [StoreFirstGuard] }, { path: "checkout", component: CheckoutComponent, canActivate: [StoreFirstGuard] }, { path: "admin", loadChildren: () => import("./admin/admin.module") .then(m => m.AdminModule), canActivate: [StoreFirstGuard] }, { path: "**", redirectTo: "/store" } ])], providers: [StoreFirstGuard], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/model/auth.service.ts ================================================ import { Injectable } from "@angular/core"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class AuthService { constructor(private datasource: RestDataSource) {} authenticate(username: string, password: string): Observable { return this.datasource.authenticate(username, password); } get authenticated(): boolean { return this.datasource.auth_token != null; } clear() { this.datasource.auth_token = null; } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/model/cart.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class Cart { public lines: CartLine[] = []; public itemCount: number = 0; public cartPrice: number = 0; addLine(product: Product, quantity: number = 1) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity += quantity; } else { this.lines.push(new CartLine(product, quantity)); } this.recalculate(); } updateQuantity(product: Product, quantity: number) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity = Number(quantity); } this.recalculate(); } removeLine(id: number) { let index = this.lines.findIndex(line => line.product.id == id); this.lines.splice(index, 1); this.recalculate(); } clear() { this.lines = []; this.itemCount = 0; this.cartPrice = 0; } private recalculate() { this.itemCount = 0; this.cartPrice = 0; this.lines.forEach(l => { this.itemCount += l.quantity; this.cartPrice += (l.quantity * l.product.price); }) } } export class CartLine { constructor(public product: Product, public quantity: number) {} get lineTotal() { return this.quantity * this.product.price; } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { ProductRepository } from "./product.repository"; import { StaticDataSource } from "./static.datasource"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; import { OrderRepository } from "./order.repository"; import { RestDataSource } from "./rest.datasource"; import { HttpClientModule } from "@angular/common/http"; import { AuthService } from "./auth.service"; @NgModule({ imports: [HttpClientModule], providers: [ProductRepository, Cart, Order, OrderRepository, { provide: StaticDataSource, useClass: RestDataSource }, RestDataSource, AuthService] }) export class ModelModule { } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/model/order.model.ts ================================================ import { Injectable } from "@angular/core"; import { Cart } from "./cart.model"; @Injectable() export class Order { public id: number; public name: string; public address: string; public city: string; public state: string; public zip: string; public country: string; public shipped: boolean = false; constructor(public cart: Cart) { } clear() { this.id = null; this.name = this.address = this.city = null; this.state = this.zip = this.country = null; this.shipped = false; this.cart.clear(); } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/model/order.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Observable } from "rxjs"; import { Order } from "./order.model"; //import { StaticDataSource } from "./static.datasource"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class OrderRepository { private orders: Order[] = []; private loaded: boolean = false; constructor(private dataSource: RestDataSource) { } loadOrders() { this.loaded = true; this.dataSource.getOrders() .subscribe(orders => this.orders = orders); } getOrders(): Order[] { if (!this.loaded) { this.loadOrders(); } return this.orders; } saveOrder(order: Order): Observable { return this.dataSource.saveOrder(order); } updateOrder(order: Order) { this.dataSource.updateOrder(order).subscribe(order => { this.orders.splice(this.orders. findIndex(o => o.id == order.id), 1, order); }); } deleteOrder(id: number) { this.dataSource.deleteOrder(id).subscribe(order => { this.orders.splice(this.orders.findIndex(o => id == o.id), 1); }); } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/model/product.model.ts ================================================ export class Product { constructor( public id?: number, public name?: string, public category?: string, public description?: string, public price?: number) { } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/model/product.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; //import { StaticDataSource } from "./static.datasource"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class ProductRepository { private products: Product[] = []; private categories: string[] = []; constructor(private dataSource: RestDataSource) { dataSource.getProducts().subscribe(data => { this.products = data; this.categories = data.map(p => p.category) .filter((c, index, array) => array.indexOf(c) == index).sort(); }); } getProducts(category: string = null): Product[] { return this.products .filter(p => category == null || category == p.category); } getProduct(id: number): Product { return this.products.find(p => p.id == id); } getCategories(): string[] { return this.categories; } saveProduct(product: Product) { if (product.id == null || product.id == 0) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product) .subscribe(p => { this.products.splice(this.products. findIndex(p => p.id == product.id), 1, product); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(p => { this.products.splice(this.products. findIndex(p => p.id == id), 1); }) } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/model/rest.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { HttpClient } from "@angular/common/http"; import { Observable } from "rxjs"; import { Product } from "./product.model"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; import { map } from "rxjs/operators"; import { HttpHeaders } from '@angular/common/http'; const PROTOCOL = "http"; const PORT = 3500; @Injectable() export class RestDataSource { baseUrl: string; auth_token: string; constructor(private http: HttpClient) { this.baseUrl = `${PROTOCOL}://${location.hostname}:${PORT}/`; } getProducts(): Observable { return this.http.get(this.baseUrl + "products"); } saveOrder(order: Order): Observable { return this.http.post(this.baseUrl + "orders", order); } authenticate(user: string, pass: string): Observable { return this.http.post(this.baseUrl + "login", { name: user, password: pass }).pipe(map(response => { this.auth_token = response.success ? response.token : null; return response.success; })); } saveProduct(product: Product): Observable { return this.http.post(this.baseUrl + "products", product, this.getOptions()); } updateProduct(product): Observable { return this.http.put(`${this.baseUrl}products/${product.id}`, product, this.getOptions()); } deleteProduct(id: number): Observable { return this.http.delete(`${this.baseUrl}products/${id}`, this.getOptions()); } getOrders(): Observable { return this.http.get(this.baseUrl + "orders", this.getOptions()); } deleteOrder(id: number): Observable { return this.http.delete(`${this.baseUrl}orders/${id}`, this.getOptions()); } updateOrder(order: Order): Observable { return this.http.put(`${this.baseUrl}orders/${order.id}`, order, this.getOptions()); } private getOptions() { return { headers: new HttpHeaders({ "Authorization": `Bearer<${this.auth_token}>` }) } } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable, from } from "rxjs"; import { Order } from "./order.model"; @Injectable() export class StaticDataSource { private products: Product[] = [ new Product(1, "Product 1", "Category 1", "Product 1 (Category 1)", 100), new Product(2, "Product 2", "Category 1", "Product 2 (Category 1)", 100), new Product(3, "Product 3", "Category 1", "Product 3 (Category 1)", 100), new Product(4, "Product 4", "Category 1", "Product 4 (Category 1)", 100), new Product(5, "Product 5", "Category 1", "Product 5 (Category 1)", 100), new Product(6, "Product 6", "Category 2", "Product 6 (Category 2)", 100), new Product(7, "Product 7", "Category 2", "Product 7 (Category 2)", 100), new Product(8, "Product 8", "Category 2", "Product 8 (Category 2)", 100), new Product(9, "Product 9", "Category 2", "Product 9 (Category 2)", 100), new Product(10, "Product 10", "Category 2", "Product 10 (Category 2)", 100), new Product(11, "Product 11", "Category 3", "Product 11 (Category 3)", 100), new Product(12, "Product 12", "Category 3", "Product 12 (Category 3)", 100), new Product(13, "Product 13", "Category 3", "Product 13 (Category 3)", 100), new Product(14, "Product 14", "Category 3", "Product 14 (Category 3)", 100), new Product(15, "Product 15", "Category 3", "Product 15 (Category 3)", 100), ]; getProducts(): Observable { return from([this.products]); } saveOrder(order: Order): Observable { console.log(JSON.stringify(order)); return from([order]); } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/cartDetail.component.html ================================================

Your Cart

Quantity Product Price Subtotal
Your cart is empty
{{line.product.name}} {{line.product.price | currency:"USD":"symbol":"2.2-2"}} {{(line.lineTotal) | currency:"USD":"symbol":"2.2-2" }}
Total: {{cart.cartPrice | currency:"USD":"symbol":"2.2-2"}}
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/cartDetail.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; @Component({ templateUrl: "cartDetail.component.html" }) export class CartDetailComponent { constructor(public cart: Cart) { } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/cartSummary.component.html ================================================
Your cart: {{ cart.itemCount }} item(s) {{ cart.cartPrice | currency:"USD":"symbol":"2.2-2" }} (empty)
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/cartSummary.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; @Component({ selector: "cart-summary", templateUrl: "cartSummary.component.html" }) export class CartSummaryComponent { constructor(public cart: Cart) { } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/checkout.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/checkout.component.html ================================================

Thanks!

Thanks for placing your order.

We'll ship your goods as soon as possible.

Please enter your name
Please enter your address
Please enter your city
Please enter your state
Please enter your zip/postal code
Please enter your country
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/checkout.component.ts ================================================ import { Component } from "@angular/core"; import { NgForm } from "@angular/forms"; import { OrderRepository } from "../model/order.repository"; import { Order } from "../model/order.model"; @Component({ templateUrl: "checkout.component.html", styleUrls: ["checkout.component.css"] }) export class CheckoutComponent { orderSent: boolean = false; submitted: boolean = false; constructor(public repository: OrderRepository, public order: Order) {} submitOrder(form: NgForm) { this.submitted = true; if (form.valid) { this.repository.saveOrder(this.order).subscribe(order => { this.order.clear(); this.orderSent = true; this.submitted = false; }); } } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/counter.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, Attribute, SimpleChanges } from "@angular/core"; @Directive({ selector: "[counterOf]" }) export class CounterDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("counterOf") counter: number; ngOnChanges(changes: SimpleChanges) { this.container.clear(); for (let i = 0; i < this.counter; i++) { this.container.createEmbeddedView(this.template, new CounterDirectiveContext(i + 1)); } } } class CounterDirectiveContext { constructor(public $implicit: any) { } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/store.component.html ================================================

{{product.name}} {{ product.price | currency:"USD":"symbol":"2.2-2" }}

{{product.description}}
================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/store.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; import { Cart } from "../model/cart.model"; import { Router } from "@angular/router"; @Component({ selector: "store", templateUrl: "store.component.html" }) export class StoreComponent { public selectedCategory = null; public productsPerPage = 4; public selectedPage = 1; constructor(private repository: ProductRepository, private cart: Cart, private router: Router) { } get products(): Product[] { let pageIndex = (this.selectedPage - 1) * this.productsPerPage return this.repository.getProducts(this.selectedCategory) .slice(pageIndex, pageIndex + this.productsPerPage); } get categories(): string[] { return this.repository.getCategories(); } changeCategory(newCategory?: string) { this.selectedCategory = newCategory; } changePage(newPage: number) { this.selectedPage = newPage; } changePageSize(newSize: number) { this.productsPerPage = Number(newSize); this.changePage(1); } get pageCount(): number { return Math.ceil(this.repository .getProducts(this.selectedCategory).length / this.productsPerPage) } addProductToCart(product: Product) { this.cart.addLine(product); this.router.navigateByUrl("/cart"); } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/store/store.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { StoreComponent } from "./store.component"; import { CounterDirective } from "./counter.directive"; import { CartSummaryComponent } from "./cartSummary.component"; import { CartDetailComponent } from "./cartDetail.component"; import { CheckoutComponent } from "./checkout.component"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [ModelModule, BrowserModule, FormsModule, RouterModule], declarations: [StoreComponent, CounterDirective, CartSummaryComponent, CartDetailComponent, CheckoutComponent], exports: [StoreComponent, CartDetailComponent, CheckoutComponent] }) export class StoreModule { } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/app/storeFirst.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { StoreComponent } from "./store/store.component"; @Injectable() export class StoreFirstGuard { private firstNavigation = true; constructor(private router: Router) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { if (this.firstNavigation) { this.firstNavigation = false; if (route.component != StoreComponent) { this.router.navigateByUrl("/"); return false; } } return true; } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/index.html ================================================ SportsStore SportsStore Will Go Here ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 09 - SportsStore - Admin/End of Chapter/SportsStore/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "SportsStore": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/SportsStore", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", "node_modules/@fortawesome/fontawesome-free/css/all.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "SportsStore:build" }, "configurations": { "production": { "browserTarget": "SportsStore:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "SportsStore:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "SportsStore:serve" }, "configurations": { "production": { "devServerTarget": "SportsStore:serve:production" } } } } }}, "defaultProject": "SportsStore" } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/authMiddleware.js ================================================ const jwt = require("jsonwebtoken"); const APP_SECRET = "myappsecret"; const USERNAME = "admin"; const PASSWORD = "secret"; const mappings = { get: ["/api/orders", "/orders"], post: ["/api/products", "/products", "/api/categories", "/categories"] } function requiresAuth(method, url) { return (mappings[method.toLowerCase()] || []) .find(p => url.startsWith(p)) !== undefined; } module.exports = function (req, res, next) { if (req.url.endsWith("/login") && req.method == "POST") { if (req.body && req.body.name == USERNAME && req.body.password == PASSWORD) { let token = jwt.sign({ data: USERNAME, expiresIn: "1h" }, APP_SECRET); res.json({ success: true, token: token }); } else { res.json({ success: false }); } res.end(); return; } else if (requiresAuth(req.method, req.url)) { let token = req.headers["authorization"] || ""; if (token.startsWith("Bearer<")) { token = token.substring(7, token.length - 1); try { jwt.verify(token, APP_SECRET); next(); return; } catch (err) { } } res.statusCode = 401; res.end(); return; } next(); } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/data.js ================================================ module.exports = function () { return { products: [ { id: 1, name: "Kayak", category: "Watersports", description: "A boat for one person", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", description: "Protective and fashionable", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", description: "FIFA-approved size and weight", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", description: "Give your playing field a professional touch", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", description: "Flat-packed 35,000-seat stadium", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", description: "Improve brain efficiency by 75%", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", description: "Secretly give your opponent a disadvantage", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", description: "A fun game for the family", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", description: "Gold-plated, diamond-studded King", price: 1200 } ], orders: [] } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); } }; ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', () => { page.navigateTo(); expect(page.getTitleText()).toEqual('SportsStore app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { navigateTo(): Promise { return browser.get(browser.baseUrl) as Promise; } getTitleText(): Promise { return element(by.css('app-root .content span')).getText() as Promise; } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/e2e/tsconfig.json ================================================ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es5", "types": [ "jasmine", "jasminewd2", "node" ] } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, coverageIstanbulReporter: { dir: require('path').join(__dirname, './coverage/SportsStore'), reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/package.json ================================================ { "name": "sports-store", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server data.js -p 3500 -m authMiddleware.js" }, "private": true, "dependencies": { "@angular/animations": "~9.0.0", "@angular/common": "~9.0.0", "@angular/compiler": "~9.0.0", "@angular/core": "~9.0.0", "@angular/forms": "~9.0.0", "@angular/platform-browser": "~9.0.0", "@angular/platform-browser-dynamic": "~9.0.0", "@angular/router": "~9.0.0", "@fortawesome/fontawesome-free": "^5.12.1", "bootstrap": "^4.4.1", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.900.0", "@angular/cli": "~9.0.0", "@angular/compiler-cli": "~9.0.0", "@angular/language-service": "~9.0.0", "@types/jasmine": "~3.5.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^12.11.1", "codelyzer": "^5.1.2", "jasmine-core": "~3.5.0", "jasmine-spec-reporter": "~4.2.1", "json-server": "^0.16.0", "jsonwebtoken": "^8.5.1", "karma": "~4.3.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.2", "protractor": "~5.4.3", "ts-node": "~8.3.0", "tslint": "~5.18.0", "typescript": "~3.7.5" } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/admin.component.html ================================================
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/admin.component.ts ================================================ import { Component } from "@angular/core"; import { Router } from "@angular/router"; import { AuthService } from "../model/auth.service"; @Component({ templateUrl: "admin.component.html" }) export class AdminComponent { constructor(private auth: AuthService, private router: Router) { } logout() { this.auth.clear(); this.router.navigateByUrl("/"); } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/admin.module.ts ================================================ import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; import { FormsModule } from "@angular/forms"; import { RouterModule } from "@angular/router"; import { AuthComponent } from "./auth.component"; import { AdminComponent } from "./admin.component"; import { AuthGuard } from "./auth.guard"; import { ProductTableComponent } from "./productTable.component"; import { ProductEditorComponent } from "./productEditor.component"; import { OrderTableComponent } from "./orderTable.component"; let routing = RouterModule.forChild([ { path: "auth", component: AuthComponent }, { path: "main", component: AdminComponent, canActivate: [AuthGuard], children: [ { path: "products/:mode/:id", component: ProductEditorComponent }, { path: "products/:mode", component: ProductEditorComponent }, { path: "products", component: ProductTableComponent }, { path: "orders", component: OrderTableComponent }, { path: "**", redirectTo: "products" } ] }, { path: "**", redirectTo: "auth" } ]); @NgModule({ imports: [CommonModule, FormsModule, routing], providers: [AuthGuard], declarations: [AuthComponent, AdminComponent, ProductTableComponent, ProductEditorComponent, OrderTableComponent] }) export class AdminModule {} ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/auth.component.html ================================================

SportsStore Admin

{{errorMessage}}
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/auth.component.ts ================================================ import { Component } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Router } from "@angular/router"; import { AuthService } from "../model/auth.service"; @Component({ templateUrl: "auth.component.html" }) export class AuthComponent { public username: string; public password: string; public errorMessage: string; constructor(private router: Router, private auth: AuthService) { } authenticate(form: NgForm) { if (form.valid) { this.auth.authenticate(this.username, this.password) .subscribe(response => { if (response) { this.router.navigateByUrl("/admin/main"); } this.errorMessage = "Authentication Failed"; }) } else { this.errorMessage = "Form Data Invalid"; } } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/auth.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { AuthService } from "../model/auth.service"; @Injectable() export class AuthGuard { constructor(private router: Router, private auth: AuthService) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { if (!this.auth.authenticated) { this.router.navigateByUrl("/admin/auth"); return false; } return true; } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/orderTable.component.html ================================================
NameZipCart
There are no orders
{{o.name}}{{o.zip}} ProductQuantity
{{line.product.name}} {{line.quantity}}
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/orderTable.component.ts ================================================ import { Component } from "@angular/core"; import { Order } from "../model/order.model"; import { OrderRepository } from "../model/order.repository"; @Component({ templateUrl: "orderTable.component.html" }) export class OrderTableComponent { includeShipped = false; constructor(private repository: OrderRepository) {} getOrders(): Order[] { return this.repository.getOrders() .filter(o => this.includeShipped || !o.shipped); } markShipped(order: Order) { order.shipped = true; this.repository.updateOrder(order); } delete(id: number) { this.repository.deleteOrder(id); } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/productEditor.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/productEditor.component.ts ================================================ import { Component } from "@angular/core"; import { Router, ActivatedRoute } from "@angular/router"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; @Component({ templateUrl: "productEditor.component.html" }) export class ProductEditorComponent { editing: boolean = false; product: Product = new Product(); constructor(private repository: ProductRepository, private router: Router, activeRoute: ActivatedRoute) { this.editing = activeRoute.snapshot.params["mode"] == "edit"; if (this.editing) { Object.assign(this.product, repository.getProduct(activeRoute.snapshot.params["id"])); } } save(form: NgForm) { this.repository.saveProduct(this.product); this.router.navigateByUrl("/admin/main/products"); } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/productTable.component.html ================================================
IDNameCategoryPrice
{{p.id}} {{p.name}} {{p.category}} {{p.price | currency:"USD":"symbol":"2.2-2"}}
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/admin/productTable.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; @Component({ templateUrl: "productTable.component.html" }) export class ProductTableComponent { constructor(private repository: ProductRepository) { } getProducts(): Product[] { return this.repository.getProducts(); } deleteProduct(id: number) { this.repository.deleteProduct(id); } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/app.component.css ================================================ ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", template: "" }) export class AppComponent { } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { AppComponent } from "./app.component"; import { StoreModule } from "./store/store.module"; import { StoreComponent } from "./store/store.component"; import { CheckoutComponent } from "./store/checkout.component"; import { CartDetailComponent } from "./store/cartDetail.component"; import { RouterModule } from "@angular/router"; import { StoreFirstGuard } from "./storeFirst.guard"; @NgModule({ imports: [BrowserModule, StoreModule, RouterModule.forRoot([ { path: "store", component: StoreComponent, canActivate: [StoreFirstGuard] }, { path: "cart", component: CartDetailComponent, canActivate: [StoreFirstGuard] }, { path: "checkout", component: CheckoutComponent, canActivate: [StoreFirstGuard] }, { path: "admin", loadChildren: () => import("./admin/admin.module") .then(m => m.AdminModule), canActivate: [StoreFirstGuard] }, { path: "**", redirectTo: "/store" } ])], providers: [StoreFirstGuard], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/model/auth.service.ts ================================================ import { Injectable } from "@angular/core"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class AuthService { constructor(private datasource: RestDataSource) {} authenticate(username: string, password: string): Observable { return this.datasource.authenticate(username, password); } get authenticated(): boolean { return this.datasource.auth_token != null; } clear() { this.datasource.auth_token = null; } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/model/cart.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class Cart { public lines: CartLine[] = []; public itemCount: number = 0; public cartPrice: number = 0; addLine(product: Product, quantity: number = 1) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity += quantity; } else { this.lines.push(new CartLine(product, quantity)); } this.recalculate(); } updateQuantity(product: Product, quantity: number) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity = Number(quantity); } this.recalculate(); } removeLine(id: number) { let index = this.lines.findIndex(line => line.product.id == id); this.lines.splice(index, 1); this.recalculate(); } clear() { this.lines = []; this.itemCount = 0; this.cartPrice = 0; } private recalculate() { this.itemCount = 0; this.cartPrice = 0; this.lines.forEach(l => { this.itemCount += l.quantity; this.cartPrice += (l.quantity * l.product.price); }) } } export class CartLine { constructor(public product: Product, public quantity: number) {} get lineTotal() { return this.quantity * this.product.price; } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { ProductRepository } from "./product.repository"; import { StaticDataSource } from "./static.datasource"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; import { OrderRepository } from "./order.repository"; import { RestDataSource } from "./rest.datasource"; import { HttpClientModule } from "@angular/common/http"; import { AuthService } from "./auth.service"; @NgModule({ imports: [HttpClientModule], providers: [ProductRepository, Cart, Order, OrderRepository, { provide: StaticDataSource, useClass: RestDataSource }, RestDataSource, AuthService] }) export class ModelModule { } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/model/order.model.ts ================================================ import { Injectable } from "@angular/core"; import { Cart } from "./cart.model"; @Injectable() export class Order { public id: number; public name: string; public address: string; public city: string; public state: string; public zip: string; public country: string; public shipped: boolean = false; constructor(public cart: Cart) { } clear() { this.id = null; this.name = this.address = this.city = null; this.state = this.zip = this.country = null; this.shipped = false; this.cart.clear(); } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/model/order.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Observable } from "rxjs"; import { Order } from "./order.model"; //import { StaticDataSource } from "./static.datasource"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class OrderRepository { private orders: Order[] = []; private loaded: boolean = false; constructor(private dataSource: RestDataSource) { } loadOrders() { this.loaded = true; this.dataSource.getOrders() .subscribe(orders => this.orders = orders); } getOrders(): Order[] { if (!this.loaded) { this.loadOrders(); } return this.orders; } saveOrder(order: Order): Observable { return this.dataSource.saveOrder(order); } updateOrder(order: Order) { this.dataSource.updateOrder(order).subscribe(order => { this.orders.splice(this.orders. findIndex(o => o.id == order.id), 1, order); }); } deleteOrder(id: number) { this.dataSource.deleteOrder(id).subscribe(order => { this.orders.splice(this.orders.findIndex(o => id == o.id), 1); }); } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/model/product.model.ts ================================================ export class Product { constructor( public id?: number, public name?: string, public category?: string, public description?: string, public price?: number) { } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/model/product.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; //import { StaticDataSource } from "./static.datasource"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class ProductRepository { private products: Product[] = []; private categories: string[] = []; constructor(private dataSource: RestDataSource) { dataSource.getProducts().subscribe(data => { this.products = data; this.categories = data.map(p => p.category) .filter((c, index, array) => array.indexOf(c) == index).sort(); }); } getProducts(category: string = null): Product[] { return this.products .filter(p => category == null || category == p.category); } getProduct(id: number): Product { return this.products.find(p => p.id == id); } getCategories(): string[] { return this.categories; } saveProduct(product: Product) { if (product.id == null || product.id == 0) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product) .subscribe(p => { this.products.splice(this.products. findIndex(p => p.id == product.id), 1, product); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(p => { this.products.splice(this.products. findIndex(p => p.id == id), 1); }) } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/model/rest.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { HttpClient } from "@angular/common/http"; import { Observable } from "rxjs"; import { Product } from "./product.model"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; import { map } from "rxjs/operators"; import { HttpHeaders } from '@angular/common/http'; const PROTOCOL = "http"; const PORT = 3500; @Injectable() export class RestDataSource { baseUrl: string; auth_token: string; constructor(private http: HttpClient) { this.baseUrl = `${PROTOCOL}://${location.hostname}:${PORT}/`; } getProducts(): Observable { return this.http.get(this.baseUrl + "products"); } saveOrder(order: Order): Observable { return this.http.post(this.baseUrl + "orders", order); } authenticate(user: string, pass: string): Observable { return this.http.post(this.baseUrl + "login", { name: user, password: pass }).pipe(map(response => { this.auth_token = response.success ? response.token : null; return response.success; })); } saveProduct(product: Product): Observable { return this.http.post(this.baseUrl + "products", product, this.getOptions()); } updateProduct(product): Observable { return this.http.put(`${this.baseUrl}products/${product.id}`, product, this.getOptions()); } deleteProduct(id: number): Observable { return this.http.delete(`${this.baseUrl}products/${id}`, this.getOptions()); } getOrders(): Observable { return this.http.get(this.baseUrl + "orders", this.getOptions()); } deleteOrder(id: number): Observable { return this.http.delete(`${this.baseUrl}orders/${id}`, this.getOptions()); } updateOrder(order: Order): Observable { return this.http.put(`${this.baseUrl}orders/${order.id}`, order, this.getOptions()); } private getOptions() { return { headers: new HttpHeaders({ "Authorization": `Bearer<${this.auth_token}>` }) } } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable, from } from "rxjs"; import { Order } from "./order.model"; @Injectable() export class StaticDataSource { private products: Product[] = [ new Product(1, "Product 1", "Category 1", "Product 1 (Category 1)", 100), new Product(2, "Product 2", "Category 1", "Product 2 (Category 1)", 100), new Product(3, "Product 3", "Category 1", "Product 3 (Category 1)", 100), new Product(4, "Product 4", "Category 1", "Product 4 (Category 1)", 100), new Product(5, "Product 5", "Category 1", "Product 5 (Category 1)", 100), new Product(6, "Product 6", "Category 2", "Product 6 (Category 2)", 100), new Product(7, "Product 7", "Category 2", "Product 7 (Category 2)", 100), new Product(8, "Product 8", "Category 2", "Product 8 (Category 2)", 100), new Product(9, "Product 9", "Category 2", "Product 9 (Category 2)", 100), new Product(10, "Product 10", "Category 2", "Product 10 (Category 2)", 100), new Product(11, "Product 11", "Category 3", "Product 11 (Category 3)", 100), new Product(12, "Product 12", "Category 3", "Product 12 (Category 3)", 100), new Product(13, "Product 13", "Category 3", "Product 13 (Category 3)", 100), new Product(14, "Product 14", "Category 3", "Product 14 (Category 3)", 100), new Product(15, "Product 15", "Category 3", "Product 15 (Category 3)", 100), ]; getProducts(): Observable { return from([this.products]); } saveOrder(order: Order): Observable { console.log(JSON.stringify(order)); return from([order]); } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/cartDetail.component.html ================================================

Your Cart

Quantity Product Price Subtotal
Your cart is empty
{{line.product.name}} {{line.product.price | currency:"USD":"symbol":"2.2-2"}} {{(line.lineTotal) | currency:"USD":"symbol":"2.2-2" }}
Total: {{cart.cartPrice | currency:"USD":"symbol":"2.2-2"}}
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/cartDetail.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; @Component({ templateUrl: "cartDetail.component.html" }) export class CartDetailComponent { constructor(public cart: Cart) { } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/cartSummary.component.html ================================================
Your cart: {{ cart.itemCount }} item(s) {{ cart.cartPrice | currency:"USD":"symbol":"2.2-2" }} (empty)
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/cartSummary.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; @Component({ selector: "cart-summary", templateUrl: "cartSummary.component.html" }) export class CartSummaryComponent { constructor(public cart: Cart) { } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/checkout.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/checkout.component.html ================================================

Thanks!

Thanks for placing your order.

We'll ship your goods as soon as possible.

Please enter your name
Please enter your address
Please enter your city
Please enter your state
Please enter your zip/postal code
Please enter your country
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/checkout.component.ts ================================================ import { Component } from "@angular/core"; import { NgForm } from "@angular/forms"; import { OrderRepository } from "../model/order.repository"; import { Order } from "../model/order.model"; @Component({ templateUrl: "checkout.component.html", styleUrls: ["checkout.component.css"] }) export class CheckoutComponent { orderSent: boolean = false; submitted: boolean = false; constructor(public repository: OrderRepository, public order: Order) {} submitOrder(form: NgForm) { this.submitted = true; if (form.valid) { this.repository.saveOrder(this.order).subscribe(order => { this.order.clear(); this.orderSent = true; this.submitted = false; }); } } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/counter.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, Attribute, SimpleChanges } from "@angular/core"; @Directive({ selector: "[counterOf]" }) export class CounterDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("counterOf") counter: number; ngOnChanges(changes: SimpleChanges) { this.container.clear(); for (let i = 0; i < this.counter; i++) { this.container.createEmbeddedView(this.template, new CounterDirectiveContext(i + 1)); } } } class CounterDirectiveContext { constructor(public $implicit: any) { } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/store.component.html ================================================

{{product.name}} {{ product.price | currency:"USD":"symbol":"2.2-2" }}

{{product.description}}
================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/store.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; import { Cart } from "../model/cart.model"; import { Router } from "@angular/router"; @Component({ selector: "store", templateUrl: "store.component.html" }) export class StoreComponent { public selectedCategory = null; public productsPerPage = 4; public selectedPage = 1; constructor(private repository: ProductRepository, private cart: Cart, private router: Router) { } get products(): Product[] { let pageIndex = (this.selectedPage - 1) * this.productsPerPage return this.repository.getProducts(this.selectedCategory) .slice(pageIndex, pageIndex + this.productsPerPage); } get categories(): string[] { return this.repository.getCategories(); } changeCategory(newCategory?: string) { this.selectedCategory = newCategory; } changePage(newPage: number) { this.selectedPage = newPage; } changePageSize(newSize: number) { this.productsPerPage = Number(newSize); this.changePage(1); } get pageCount(): number { return Math.ceil(this.repository .getProducts(this.selectedCategory).length / this.productsPerPage) } addProductToCart(product: Product) { this.cart.addLine(product); this.router.navigateByUrl("/cart"); } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/store/store.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { StoreComponent } from "./store.component"; import { CounterDirective } from "./counter.directive"; import { CartSummaryComponent } from "./cartSummary.component"; import { CartDetailComponent } from "./cartDetail.component"; import { CheckoutComponent } from "./checkout.component"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [ModelModule, BrowserModule, FormsModule, RouterModule], declarations: [StoreComponent, CounterDirective, CartSummaryComponent, CartDetailComponent, CheckoutComponent], exports: [StoreComponent, CartDetailComponent, CheckoutComponent] }) export class StoreModule { } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/app/storeFirst.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { StoreComponent } from "./store/store.component"; @Injectable() export class StoreFirstGuard { private firstNavigation = true; constructor(private router: Router) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { if (this.firstNavigation) { this.firstNavigation = false; if (route.component != StoreComponent) { this.router.navigateByUrl("/"); return false; } } return true; } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/index.html ================================================ SportsStore SportsStore Will Go Here ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags.ts'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/tsconfig.app.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/tsconfig.json ================================================ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "module": "esnext", "moduleResolution": "node", "importHelpers": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ] }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, "strictInjectionParameters": true } } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/tsconfig.spec.json ================================================ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine", "node" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: 10 - SportsStore - Deployment/Beginning of Chapter/SportsStore/tslint.json ================================================ { "extends": "tslint:recommended", "rules": { "array-type": false, "arrow-parens": false, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ], "import-blacklist": [ true, "rxjs/Rx" ], "interface-name": false, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-access": false, "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-consecutive-blank-lines": false, "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "object-literal-sort-keys": false, "ordered-imports": false, "quotemark": [ true, "single" ], "trailing-comma": false, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true }, "rulesDirectory": [ "codelyzer" ] } ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/.dockerignore ================================================ node_modules ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/.editorconfig ================================================ # Editor configuration, see https://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 ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/Dockerfile ================================================ FROM node:12.15.0 RUN mkdir -p /usr/src/sportsstore COPY dist/SportsStore /usr/src/sportsstore/dist/SportsStore COPY ssl /usr/src/sportsstore/ssl COPY authMiddleware.js /usr/src/sportsstore/ COPY serverdata.json /usr/src/sportsstore/ COPY server.js /usr/src/sportsstore/server.js COPY deploy-package.json /usr/src/sportsstore/package.json WORKDIR /usr/src/sportsstore RUN npm install EXPOSE 80 CMD ["node", "server.js"] ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "SportsStore": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/SportsStore", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets", "src/manifest.webmanifest" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", "node_modules/@fortawesome/fontawesome-free/css/all.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ], "serviceWorker": true, "ngswConfigPath": "ngsw-config.json" } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "SportsStore:build" }, "configurations": { "production": { "browserTarget": "SportsStore:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "SportsStore:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets", "src/manifest.webmanifest" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "SportsStore:serve" }, "configurations": { "production": { "devServerTarget": "SportsStore:serve:production" } } } } }}, "defaultProject": "SportsStore" } ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/authMiddleware.js ================================================ const jwt = require("jsonwebtoken"); const APP_SECRET = "myappsecret"; const USERNAME = "admin"; const PASSWORD = "secret"; const mappings = { get: ["/api/orders", "/orders"], post: ["/api/products", "/products", "/api/categories", "/categories"] } function requiresAuth(method, url) { return (mappings[method.toLowerCase()] || []) .find(p => url.startsWith(p)) !== undefined; } module.exports = function (req, res, next) { if (req.url.endsWith("/login") && req.method == "POST") { if (req.body && req.body.name == USERNAME && req.body.password == PASSWORD) { let token = jwt.sign({ data: USERNAME, expiresIn: "1h" }, APP_SECRET); res.json({ success: true, token: token }); } else { res.json({ success: false }); } res.end(); return; } else if (requiresAuth(req.method, req.url)) { let token = req.headers["authorization"] || ""; if (token.startsWith("Bearer<")) { token = token.substring(7, token.length - 1); try { jwt.verify(token, APP_SECRET); next(); return; } catch (err) { } } res.statusCode = 401; res.end(); return; } next(); } ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/browserslist ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # You can see what browsers were selected by your queries by running: # npx browserslist > 0.5% last 2 versions Firefox ESR not dead not IE 9-11 # For IE 9-11 support, remove 'not'. ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/data.js ================================================ module.exports = function () { return { products: [ { id: 1, name: "Kayak", category: "Watersports", description: "A boat for one person", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", description: "Protective and fashionable", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", description: "FIFA-approved size and weight", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", description: "Give your playing field a professional touch", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", description: "Flat-packed 35,000-seat stadium", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", description: "Improve brain efficiency by 75%", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", description: "Secretly give your opponent a disadvantage", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", description: "A fun game for the family", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", description: "Gold-plated, diamond-studded King", price: 1200 } ], orders: [] } } ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/deploy-package.json ================================================ { "dependencies": { "@fortawesome/fontawesome-free": "5.12.1", "bootstrap": "4.4.1" }, "devDependencies": { "json-server": "0.16.0", "jsonwebtoken": "8.5.1", "express": "4.17.1", "https": "1.0.0", "connect-history-api-fallback": "1.6.0" }, "scripts": { "start": "node server.js" } } ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/3rdpartylicenses.txt ================================================ @angular-devkit/build-angular MIT The MIT License Copyright (c) 2017 Google, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. @angular/common MIT @angular/core MIT @angular/forms MIT @angular/platform-browser MIT @angular/router MIT @angular/service-worker MIT @fortawesome/fontawesome-free (CC-BY-4.0 AND OFL-1.1 AND MIT) Font Awesome Free License ------------------------- Font Awesome Free is free, open source, and GPL friendly. You can use it for commercial projects, open source projects, or really almost whatever you want. Full Font Awesome Free license: https://fontawesome.com/license/free. # Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/) In the Font Awesome Free download, the CC BY 4.0 license applies to all icons packaged as SVG and JS file types. # Fonts: SIL OFL 1.1 License (https://scripts.sil.org/OFL) In the Font Awesome Free download, the SIL OFL license applies to all icons packaged as web and desktop font files. # Code: MIT License (https://opensource.org/licenses/MIT) In the Font Awesome Free download, the MIT license applies to all non-font and non-icon files. # Attribution Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font Awesome Free files already contain embedded comments with sufficient attribution, so you shouldn't need to do anything additional when using these files normally. We've kept attribution comments terse, so we ask that you do not actively work to remove them from files, especially code. They're a great way for folks to learn about Font Awesome. # Brand Icons All brand icons are trademarks of their respective owners. The use of these trademarks does not indicate endorsement of the trademark holder by Font Awesome, nor vice versa. **Please do not use brand logos for any purpose except to represent the company, product, or service to which they refer.** bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. core-js MIT Copyright (c) 2014-2019 Denis Pushkarev Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. regenerator-runtime MIT MIT License Copyright (c) 2014-present, Facebook, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2019 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/5-es2015.b2d2985f67757f20fa32.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[5],{jkDv:function(t,e,n){"use strict";n.r(e);var r=n("ofXK"),b=n("3Pt+"),o=n("tyNb"),c=n("fXoL"),i=n("hO0c");function a(t,e){if(1&t&&(c.Mb(0,"div",11),c.hc(1),c.Lb()),2&t){const t=c.Wb();c.zb(1),c.jc(" ",t.errorMessage," ")}}let d=(()=>{class t{constructor(t,e){this.router=t,this.auth=e}authenticate(t){t.valid?this.auth.authenticate(this.username,this.password).subscribe(t=>{t&&this.router.navigateByUrl("/admin/main"),this.errorMessage="Authentication Failed"}):this.errorMessage="Form Data Invalid"}}return t.\u0275fac=function(e){return new(e||t)(c.Jb(o.b),c.Jb(i.a))},t.\u0275cmp=c.Db({type:t,selectors:[["ng-component"]],decls:20,vars:3,consts:[[1,"bg-info","p-2","text-center","text-white"],["class","bg-danger mt-2 p-2 text-center text-white",4,"ngIf"],[1,"p-2"],["novalidate","",3,"ngSubmit"],["form","ngForm"],[1,"form-group"],["name","username","required","",1,"form-control",3,"ngModel","ngModelChange"],["type","password","name","password","required","",1,"form-control",3,"ngModel","ngModelChange"],[1,"text-center"],["routerLink","/",1,"btn","btn-secondary","m-1"],["type","submit",1,"btn","btn-primary","m-1"],[1,"bg-danger","mt-2","p-2","text-center","text-white"]],template:function(t,e){if(1&t){const t=c.Nb();c.Mb(0,"div",0),c.Mb(1,"h3"),c.hc(2,"SportsStore Admin"),c.Lb(),c.Lb(),c.gc(3,a,2,1,"div",1),c.Mb(4,"div",2),c.Mb(5,"form",3,4),c.Ub("ngSubmit",(function(n){c.dc(t);const r=c.cc(6);return e.authenticate(r)})),c.Mb(7,"div",5),c.Mb(8,"label"),c.hc(9,"Name"),c.Lb(),c.Mb(10,"input",6),c.Ub("ngModelChange",(function(t){return e.username=t})),c.Lb(),c.Lb(),c.Mb(11,"div",5),c.Mb(12,"label"),c.hc(13,"Password"),c.Lb(),c.Mb(14,"input",7),c.Ub("ngModelChange",(function(t){return e.password=t})),c.Lb(),c.Lb(),c.Mb(15,"div",8),c.Mb(16,"button",9),c.hc(17,"Go back"),c.Lb(),c.Mb(18,"button",10),c.hc(19,"Log In"),c.Lb(),c.Lb(),c.Lb(),c.Lb()}2&t&&(c.zb(3),c.Zb("ngIf",null!=e.errorMessage),c.zb(7),c.Zb("ngModel",e.username),c.zb(4),c.Zb("ngModel",e.password))},directives:[r.j,b.k,b.e,b.f,b.b,b.i,b.d,b.g,o.c],encapsulation:2}),t})(),s=(()=>{class t{constructor(t,e){this.auth=t,this.router=e}logout(){this.auth.clear(),this.router.navigateByUrl("/")}}return t.\u0275fac=function(e){return new(e||t)(c.Jb(i.a),c.Jb(o.b))},t.\u0275cmp=c.Db({type:t,selectors:[["ng-component"]],decls:15,vars:0,consts:[[1,"container-fluid"],[1,"row"],[1,"col","bg-dark","text-white"],[1,"navbar-brand"],[1,"row","mt-2"],[1,"col-3"],["routerLink","/admin/main/products","routerLinkActive","active",1,"btn","btn-outline-info","btn-block"],["routerLink","/admin/main/orders","routerLinkActive","active",1,"btn","btn-outline-info","btn-block"],[1,"btn","btn-outline-danger","btn-block",3,"click"],[1,"col-9"]],template:function(t,e){1&t&&(c.Mb(0,"div",0),c.Mb(1,"div",1),c.Mb(2,"div",2),c.Mb(3,"a",3),c.hc(4,"SPORTS STORE"),c.Lb(),c.Lb(),c.Lb(),c.Mb(5,"div",4),c.Mb(6,"div",5),c.Mb(7,"button",6),c.hc(8," Products "),c.Lb(),c.Mb(9,"button",7),c.hc(10," Orders "),c.Lb(),c.Mb(11,"button",8),c.Ub("click",(function(t){return e.logout()})),c.hc(12," Logout "),c.Lb(),c.Lb(),c.Mb(13,"div",9),c.Kb(14,"router-outlet"),c.Lb(),c.Lb(),c.Lb())},directives:[o.c,o.d,o.f],encapsulation:2}),t})(),u=(()=>{class t{constructor(t,e){this.router=t,this.auth=e}canActivate(t,e){return!!this.auth.authenticated||(this.router.navigateByUrl("/admin/auth"),!1)}}return t.\u0275fac=function(e){return new(e||t)(c.Qb(o.b),c.Qb(i.a))},t.\u0275prov=c.Fb({token:t,factory:t.\u0275fac}),t})();var h=n("jU2X");const p=function(t){return["/admin/main/products/edit",t]};function l(t,e){if(1&t){const t=c.Nb();c.Mb(0,"tr"),c.Mb(1,"td"),c.hc(2),c.Lb(),c.Mb(3,"td"),c.hc(4),c.Lb(),c.Mb(5,"td"),c.hc(6),c.Lb(),c.Mb(7,"td"),c.hc(8),c.Xb(9,"currency"),c.Lb(),c.Mb(10,"td"),c.Mb(11,"button",3),c.hc(12," Edit "),c.Lb(),c.Mb(13,"button",4),c.Ub("click",(function(n){c.dc(t);const r=e.$implicit;return c.Wb().deleteProduct(r.id)})),c.hc(14," Delete "),c.Lb(),c.Lb(),c.Lb()}if(2&t){const t=e.$implicit;c.zb(2),c.ic(t.id),c.zb(2),c.ic(t.name),c.zb(2),c.ic(t.category),c.zb(2),c.ic(c.Yb(9,5,t.price,"USD","symbol","2.2-2")),c.zb(3),c.Zb("routerLink",c.ac(10,p,t.id))}}let g=(()=>{class t{constructor(t){this.repository=t}getProducts(){return this.repository.getProducts()}deleteProduct(t){this.repository.deleteProduct(t)}}return t.\u0275fac=function(e){return new(e||t)(c.Jb(h.a))},t.\u0275cmp=c.Db({type:t,selectors:[["ng-component"]],decls:16,vars:1,consts:[[1,"table","table-sm","table-striped"],[4,"ngFor","ngForOf"],["routerLink","/admin/main/products/create",1,"btn","btn-primary"],[1,"btn","btn-sm","btn-warning","m-1",3,"routerLink"],[1,"btn","btn-sm","btn-danger",3,"click"]],template:function(t,e){1&t&&(c.Mb(0,"table",0),c.Mb(1,"thead"),c.Mb(2,"tr"),c.Mb(3,"th"),c.hc(4,"ID"),c.Lb(),c.Mb(5,"th"),c.hc(6,"Name"),c.Lb(),c.Mb(7,"th"),c.hc(8,"Category"),c.Lb(),c.Mb(9,"th"),c.hc(10,"Price"),c.Lb(),c.Kb(11,"th"),c.Lb(),c.Lb(),c.Mb(12,"tbody"),c.gc(13,l,15,12,"tr",1),c.Lb(),c.Lb(),c.Mb(14,"button",2),c.hc(15," Create New Product\n"),c.Lb()),2&t&&(c.zb(13),c.Zb("ngForOf",e.getProducts()))},directives:[r.i,o.c],pipes:[r.c],encapsulation:2}),t})();var m=n("4Sfc");let M=(()=>{class t{constructor(t,e,n){this.repository=t,this.router=e,this.editing=!1,this.product=new m.a,this.editing="edit"==n.snapshot.params.mode,this.editing&&Object.assign(this.product,t.getProduct(n.snapshot.params.id))}save(t){this.repository.saveProduct(this.product),this.router.navigateByUrl("/admin/main/products")}}return t.\u0275fac=function(e){return new(e||t)(c.Jb(h.a),c.Jb(o.b),c.Jb(o.a))},t.\u0275cmp=c.Db({type:t,selectors:[["ng-component"]],decls:26,vars:12,consts:[[1,"bg-primary","p-2","text-white"],["novalidate","",3,"ngSubmit"],["form","ngForm"],[1,"form-group"],["name","name",1,"form-control",3,"ngModel","ngModelChange"],["name","category",1,"form-control",3,"ngModel","ngModelChange"],["name","description",1,"form-control",3,"ngModel","ngModelChange"],["name","price",1,"form-control",3,"ngModel","ngModelChange"],["type","submit",1,"btn","btn-primary","m-1"],["type","reset","routerLink","/admin/main/products",1,"btn","btn-secondary"]],template:function(t,e){if(1&t){const t=c.Nb();c.Mb(0,"div",0),c.Mb(1,"h5"),c.hc(2),c.Lb(),c.Lb(),c.Mb(3,"form",1,2),c.Ub("ngSubmit",(function(n){c.dc(t);const r=c.cc(4);return e.save(r)})),c.Mb(5,"div",3),c.Mb(6,"label"),c.hc(7,"Name"),c.Lb(),c.Mb(8,"input",4),c.Ub("ngModelChange",(function(t){return e.product.name=t})),c.Lb(),c.Lb(),c.Mb(9,"div",3),c.Mb(10,"label"),c.hc(11,"Category"),c.Lb(),c.Mb(12,"input",5),c.Ub("ngModelChange",(function(t){return e.product.category=t})),c.Lb(),c.Lb(),c.Mb(13,"div",3),c.Mb(14,"label"),c.hc(15,"Description"),c.Lb(),c.Mb(16,"textarea",6),c.Ub("ngModelChange",(function(t){return e.product.description=t})),c.hc(17," "),c.Lb(),c.Lb(),c.Mb(18,"div",3),c.Mb(19,"label"),c.hc(20,"Price"),c.Lb(),c.Mb(21,"input",7),c.Ub("ngModelChange",(function(t){return e.product.price=t})),c.Lb(),c.Lb(),c.Mb(22,"button",8),c.hc(23),c.Lb(),c.Mb(24,"button",9),c.hc(25," Cancel "),c.Lb(),c.Lb()}2&t&&(c.Bb("bg-warning",e.editing)("text-dark",e.editing),c.zb(2),c.jc("",e.editing?"Edit":"Create"," Product"),c.zb(6),c.Zb("ngModel",e.product.name),c.zb(4),c.Zb("ngModel",e.product.category),c.zb(4),c.Zb("ngModel",e.product.description),c.zb(5),c.Zb("ngModel",e.product.price),c.zb(1),c.Bb("btn-warning",e.editing),c.zb(1),c.jc(" ",e.editing?"Save":"Create"," "))},directives:[b.k,b.e,b.f,b.b,b.d,b.g,o.c],encapsulation:2}),t})();var L=n("hf/X");function f(t,e){1&t&&(c.Mb(0,"tr"),c.Mb(1,"td",7),c.hc(2,"There are no orders"),c.Lb(),c.Lb())}function v(t,e){if(1&t&&(c.Mb(0,"tr"),c.Kb(1,"td",4),c.Mb(2,"td"),c.hc(3),c.Lb(),c.Mb(4,"td"),c.hc(5),c.Lb(),c.Lb()),2&t){const t=e.$implicit;c.zb(3),c.ic(t.product.name),c.zb(2),c.ic(t.quantity)}}function y(t,e){if(1&t){const t=c.Nb();c.Mb(0,"tr"),c.Mb(1,"td"),c.hc(2),c.Lb(),c.Mb(3,"td"),c.hc(4),c.Lb(),c.Mb(5,"th"),c.hc(6,"Product"),c.Lb(),c.Mb(7,"th"),c.hc(8,"Quantity"),c.Lb(),c.Mb(9,"td"),c.Mb(10,"button",8),c.Ub("click",(function(n){c.dc(t);const r=e.$implicit;return c.Wb().markShipped(r)})),c.hc(11," Ship "),c.Lb(),c.Mb(12,"button",9),c.Ub("click",(function(n){c.dc(t);const r=e.$implicit;return c.Wb().delete(r.id)})),c.hc(13," Delete "),c.Lb(),c.Lb(),c.Lb(),c.gc(14,v,6,2,"tr",10)}if(2&t){const t=e.$implicit;c.zb(2),c.ic(t.name),c.zb(2),c.ic(t.zip),c.zb(10),c.Zb("ngForOf",t.cart.lines)}}let k=(()=>{class t{constructor(t){this.repository=t,this.includeShipped=!1}getOrders(){return this.repository.getOrders().filter(t=>this.includeShipped||!t.shipped)}markShipped(t){t.shipped=!0,this.repository.updateOrder(t)}delete(t){this.repository.deleteOrder(t)}}return t.\u0275fac=function(e){return new(e||t)(c.Jb(L.a))},t.\u0275cmp=c.Db({type:t,selectors:[["ng-component"]],decls:17,vars:3,consts:[[1,"form-check"],[1,"form-check-label"],["type","checkbox",1,"form-check-input",3,"ngModel","ngModelChange"],[1,"table","table-sm"],["colspan","2"],[4,"ngIf"],["ngFor","",3,"ngForOf"],["colspan","5"],[1,"btn","btn-warning","m-1",3,"click"],[1,"btn","btn-danger",3,"click"],[4,"ngFor","ngForOf"]],template:function(t,e){1&t&&(c.Mb(0,"div",0),c.Mb(1,"label",1),c.Mb(2,"input",2),c.Ub("ngModelChange",(function(t){return e.includeShipped=t})),c.Lb(),c.hc(3," Display Shipped Orders "),c.Lb(),c.Lb(),c.Mb(4,"table",3),c.Mb(5,"thead"),c.Mb(6,"tr"),c.Mb(7,"th"),c.hc(8,"Name"),c.Lb(),c.Mb(9,"th"),c.hc(10,"Zip"),c.Lb(),c.Mb(11,"th",4),c.hc(12,"Cart"),c.Lb(),c.Kb(13,"th"),c.Lb(),c.Lb(),c.Mb(14,"tbody"),c.gc(15,f,3,0,"tr",5),c.gc(16,y,15,3,"ng-template",6),c.Lb(),c.Lb()),2&t&&(c.zb(2),c.Zb("ngModel",e.includeShipped),c.zb(13),c.Zb("ngIf",0==e.getOrders().length),c.zb(1),c.Zb("ngForOf",e.getOrders()))},directives:[b.a,b.d,b.g,r.j,r.i],encapsulation:2}),t})();n.d(e,"AdminModule",(function(){return z}));let w=o.e.forChild([{path:"auth",component:d},{path:"main",component:s,canActivate:[u],children:[{path:"products/:mode/:id",component:M},{path:"products/:mode",component:M},{path:"products",component:g},{path:"orders",component:k},{path:"**",redirectTo:"products"}]},{path:"**",redirectTo:"auth"}]),z=(()=>{class t{}return t.\u0275mod=c.Hb({type:t}),t.\u0275inj=c.Gb({factory:function(e){return new(e||t)},providers:[u],imports:[[r.b,b.c,w]]}),t})()}}]); ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/5-es5.b2d2985f67757f20fa32.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n SportsStore SportsStore Will Go Here ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/main-es2015.17a65f3ef96068aef242.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},"0EUg":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n("bHdf");function s(){return Object(r.a)(1)}},"2QA8":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));const r=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())()},"2fFW":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));let r=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else r&&console.log("RxJS: Back to a better error behavior. Thank you. <3");r=t},get useDeprecatedSynchronousErrorHandling(){return r}}},"3Pt+":function(t,e,n){"use strict";var r=n("fXoL"),s=n("ofXK"),i=n("HDdC"),o=n("DH7j"),a=n("lJxs"),c=n("XoHu"),u=n("Cfvw");function l(t,e){return new i.a(n=>{const r=t.length;if(0===r)return void n.complete();const s=new Array(r);let i=0,o=0;for(let a=0;a{l||(l=!0,o++),s[a]=t},error:t=>n.error(t),complete:()=>{i++,i!==r&&l||(o===r&&n.next(e?e.reduce((t,e,n)=>(t[e]=s[n],t),{}):s),n.complete())}}))}})}n.d(e,"a",(function(){return p})),n.d(e,"b",(function(){return m})),n.d(e,"c",(function(){return Tt})),n.d(e,"d",(function(){return S})),n.d(e,"e",(function(){return O})),n.d(e,"f",(function(){return ft})),n.d(e,"g",(function(){return Ct})),n.d(e,"h",(function(){return W})),n.d(e,"i",(function(){return Et})),n.d(e,"j",(function(){return K})),n.d(e,"k",(function(){return St}));const h=new r.q("NgValueAccessor"),d={provide:h,useExisting:Object(r.S)(()=>p),multi:!0};let p=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.D),r.Jb(r.l))},t.\u0275dir=r.Eb({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(t,e){1&t&&r.Ub("change",(function(t){return e.onChange(t.target.checked)}))("blur",(function(t){return e.onTouched()}))},features:[r.yb([d])]}),t})();const f={provide:h,useExisting:Object(r.S)(()=>m),multi:!0},g=new r.q("CompositionEventMode");let m=(()=>{class t{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=t=>{},this.onTouched=()=>{},this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Object(s.q)()?Object(s.q)().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.D),r.Jb(r.l),r.Jb(g,8))},t.\u0275dir=r.Eb({type:t,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(t,e){1&t&&r.Ub("input",(function(t){return e._handleInput(t.target.value)}))("blur",(function(t){return e.onTouched()}))("compositionstart",(function(t){return e._compositionStart()}))("compositionend",(function(t){return e._compositionEnd(t.target.value)}))},features:[r.yb([f])]}),t})(),b=(()=>{class t{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=r.Eb({type:t}),t})(),y=(()=>{class t extends b{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(e){return v(e||t)},t.\u0275dir=r.Eb({type:t,features:[r.wb]}),t})();const v=r.Ob(y);function _(){throw new Error("unimplemented")}class w extends b{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return _()}get asyncValidator(){return _()}}class C{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}let S=(()=>{class t extends C{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(w,2))},t.\u0275dir=r.Eb({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&r.Bb("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[r.wb]}),t})(),O=(()=>{class t extends C{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(y,2))},t.\u0275dir=r.Eb({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:14,hostBindings:function(t,e){2&t&&r.Bb("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[r.wb]}),t})();function E(t){return null==t||0===t.length}const x=new r.q("NgValidators"),T=new r.q("NgAsyncValidators"),k=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class A{static min(t){return e=>{if(E(e.value)||E(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(E(e.value)||E(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return E(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return E(t.value)?null:k.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(E(e.value))return null;const n=e.value?e.value.length:0;return n{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return A.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(E(t.value))return null;const r=t.value;return e.test(r)?null:{pattern:{requiredPattern:n,actualValue:r}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(j);return 0==e.length?null:function(t){return I(function(t,e){return e.map(e=>e(t))}(t,e))}}static composeAsync(t){if(!t)return null;const e=t.filter(j);return 0==e.length?null:function(t){return function(...t){if(1===t.length){const e=t[0];if(Object(o.a)(e))return l(e,null);if(Object(c.a)(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return l(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return l(t=1===t.length&&Object(o.a)(t[0])?t[0]:t,null).pipe(Object(a.a)(t=>e(...t)))}return l(t,null)}(function(t,e){return e.map(e=>e(t))}(t,e).map(P)).pipe(Object(a.a)(I))}}}function j(t){return null!=t}function P(t){const e=Object(r.qb)(t)?Object(u.a)(t):t;if(!Object(r.pb)(e))throw new Error("Expected validator to return Promise or Observable.");return e}function I(t){let e={};return t.forEach(t=>{e=null!=t?Object.assign(Object.assign({},e),t):e}),0===Object.keys(e).length?null:e}function R(t){return t.validate?e=>t.validate(e):t}function N(t){return t.validate?e=>t.validate(e):t}const M={provide:h,useExisting:Object(r.S)(()=>D),multi:!0};let D=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.D),r.Jb(r.l))},t.\u0275dir=r.Eb({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(t,e){1&t&&r.Ub("change",(function(t){return e.onChange(t.target.value)}))("input",(function(t){return e.onChange(t.target.value)}))("blur",(function(t){return e.onTouched()}))},features:[r.yb([M])]}),t})();const L={provide:h,useExisting:Object(r.S)(()=>U),multi:!0};let V=(()=>{class t{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),U=(()=>{class t{constructor(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=()=>{},this.onTouched=()=>{}}ngOnInit(){this._control=this._injector.get(w),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.D),r.Jb(r.l),r.Jb(V),r.Jb(r.r))},t.\u0275dir=r.Eb({type:t,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(t,e){1&t&&r.Ub("change",(function(t){return e.onChange()}))("blur",(function(t){return e.onTouched()}))},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[r.yb([L])]}),t})();const F={provide:h,useExisting:Object(r.S)(()=>H),multi:!0};let H=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.D),r.Jb(r.l))},t.\u0275dir=r.Eb({type:t,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(t,e){1&t&&r.Ub("change",(function(t){return e.onChange(t.target.value)}))("input",(function(t){return e.onChange(t.target.value)}))("blur",(function(t){return e.onTouched()}))},features:[r.yb([F])]}),t})();const $='\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',z='\n
\n
\n \n
\n
',q={provide:h,useExisting:Object(r.S)(()=>G),multi:!0};function B(t,e){return null==t?`${e}`:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}let G=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=r.rb}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=B(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=e=>{this.value=this._getOptionValue(e),t(this.value)}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.D),r.Jb(r.l))},t.\u0275dir=r.Eb({type:t,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(t,e){1&t&&r.Ub("change",(function(t){return e.onChange(t.target.value)}))("blur",(function(t){return e.onTouched()}))},inputs:{compareWith:"compareWith"},features:[r.yb([q])]}),t})(),W=(()=>{class t{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(B(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.l),r.Jb(r.D),r.Jb(G,9))},t.\u0275dir=r.Eb({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();const Z={provide:h,useExisting:Object(r.S)(()=>J),multi:!0};function Q(t,e){return null==t?`${e}`:("string"==typeof e&&(e=`'${e}'`),e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}let J=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=r.rb}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=(t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)}}else e=(t,e)=>{t._setSelected(!1)};this._optionMap.forEach(e)}registerOnChange(t){this.onChange=e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e{class t{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(Q(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(Q(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.l),r.Jb(r.D),r.Jb(J,9))},t.\u0275dir=r.Eb({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();function X(t,e){return[...e.path,t]}function Y(t,e){t||et(e,"Cannot find control with"),e.valueAccessor||et(e,"No value accessor for form control with"),t.validator=A.compose([t.validator,e.validator]),t.asyncValidator=A.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&tt(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&tt(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function tt(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function et(t,e){let n;throw n=t.path.length>1?`path: '${t.path.join(" -> ")}'`:t.path[0]?`name: '${t.path}'`:"unspecified name attribute",new Error(`${e} ${n}`)}function nt(t){return null!=t?A.compose(t.map(R)):null}function rt(t){return null!=t?A.composeAsync(t.map(N)):null}const st=[p,H,D,G,J,U];function it(t){const e=at(t)?t.validators:t;return Array.isArray(e)?nt(e):e||null}function ot(t,e){const n=at(e)?e.asyncValidators:t;return Array.isArray(n)?rt(n):n||null}function at(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class ct{constructor(t,e){this.validator=t,this.asyncValidator=e,this._onCollectionChange=()=>{},this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return"VALID"===this.status}get invalid(){return"INVALID"===this.status}get pending(){return"PENDING"==this.status}get disabled(){return"DISABLED"===this.status}get enabled(){return"DISABLED"!==this.status}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=it(t)}setAsyncValidators(t){this.asyncValidator=ot(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status="PENDING",!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="DISABLED",this.errors=null,this._forEachChild(e=>{e.disable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="VALID",this._forEachChild(e=>{e.enable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),"VALID"!==this.status&&"PENDING"!==this.status||this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?"DISABLED":"VALID"}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status="PENDING";const e=P(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e)return null;if(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length)return null;let r=t;return e.forEach(t=>{r=r instanceof lt?r.controls.hasOwnProperty(t)?r.controls[t]:null:r instanceof ht&&r.at(t)||null}),r}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new r.n,this.statusChanges=new r.n}_calculateStatus(){return this._allControlsDisabled()?"DISABLED":this.errors?"INVALID":this._anyControlsHaveStatus("PENDING")?"PENDING":this._anyControlsHaveStatus("INVALID")?"INVALID":"VALID"}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){at(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class ut extends ct{constructor(t=null,e,n){super(it(e),ot(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=()=>{}}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){this._isBoxedValue(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}}class lt extends ct{constructor(t,e,n){super(it(e),ot(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,r)=>{n.reset(t[r],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof ut?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[t])throw new Error(`Cannot find form control with name: ${t}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,r)=>{e=e||this.contains(r)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,r)=>{n=e(n,t,r)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class ht extends ct{constructor(t,e,n){super(it(e),ot(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,r)=>{n.reset(t[r],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof ut?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(t))throw new Error(`Cannot find form control at index ${t}`)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const dt={provide:y,useExisting:Object(r.S)(()=>ft)},pt=(()=>Promise.resolve(null))();let ft=(()=>{class t extends y{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new r.n,this.form=new lt({},nt(t),rt(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){pt.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Y(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){pt.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),function(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}(this._directives,t)})}addFormGroup(t){pt.then(()=>{const e=this._findContainer(t.path),n=new lt({});(function(t,e){null==t&&et(e,"Cannot find control with"),t.validator=A.compose([t.validator,e.validator]),t.asyncValidator=A.composeAsync([t.asyncValidator,e.asyncValidator])})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){pt.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){pt.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(x,10),r.Jb(T,10))},t.\u0275dir=r.Eb({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&r.Ub("submit",(function(t){return e.onSubmit(t)}))("reset",(function(t){return e.onReset()}))},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[r.yb([dt]),r.wb]}),t})(),gt=(()=>{class t extends y{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return X(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nt(this._validators)}get asyncValidator(){return rt(this._asyncValidators)}_checkParentType(){}}return t.\u0275fac=function(e){return mt(e||t)},t.\u0275dir=r.Eb({type:t,features:[r.wb]}),t})();const mt=r.Ob(gt);class bt{static modelParentException(){throw new Error('\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup\'s partner directive "formControlName" instead. Example:\n\n \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\n\n Or, if you\'d like to avoid registering this form control, indicate that it\'s standalone in ngModelOptions:\n\n Example:\n\n \n
\n \n \n
\n ')}static formGroupNameException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n ${$}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${z}`)}static missingNameException(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: \n Example 2: ')}static modelGroupParentException(){throw new Error(`\n ngModelGroup cannot be used with a parent formGroup directive.\n\n Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n ${$}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${z}`)}}const yt={provide:y,useExisting:Object(r.S)(()=>vt)};let vt=(()=>{class t extends gt{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof ft||bt.modelGroupParentException()}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(y,5),r.Jb(x,10),r.Jb(T,10))},t.\u0275dir=r.Eb({type:t,selectors:[["","ngModelGroup",""]],inputs:{name:["ngModelGroup","name"]},exportAs:["ngModelGroup"],features:[r.yb([yt]),r.wb]}),t})();const _t={provide:w,useExisting:Object(r.S)(()=>Ct)},wt=(()=>Promise.resolve(null))();let Ct=(()=>{class t extends w{constructor(t,e,n,s){super(),this.control=new ut,this._registered=!1,this.update=new r.n,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||et(t,"Value accessor was not provided as an array for form control with");let n=void 0,r=void 0,s=void 0;return e.forEach(e=>{var i;e.constructor===m?n=e:(i=e,st.some(t=>i.constructor===t)?(r&&et(t,"More than one built-in value accessor matches form control with"),r=e):(s&&et(t,"More than one custom value accessor matches form control with"),s=e))}),s||r||n||(et(t,"No valid value accessor for form control with"),null)}(this,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!Object(r.rb)(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?X(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nt(this._rawValidators)}get asyncValidator(){return rt(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Y(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof vt)&&this._parent instanceof gt?bt.formGroupNameException():this._parent instanceof vt||this._parent instanceof ft||bt.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||bt.missingNameException()}_updateValue(t){wt.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;wt.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(y,9),r.Jb(x,10),r.Jb(T,10),r.Jb(h,10))},t.\u0275dir=r.Eb({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[r.yb([_t]),r.wb,r.xb()]}),t})(),St=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=r.Eb({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})();const Ot={provide:x,useExisting:Object(r.S)(()=>Et),multi:!0};let Et=(()=>{class t{get required(){return this._required}set required(t){this._required=null!=t&&!1!==t&&"false"!==`${t}`,this._onChange&&this._onChange()}validate(t){return this.required?A.required(t):null}registerOnValidatorChange(t){this._onChange=t}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=r.Eb({type:t,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(t,e){2&t&&r.Ab("required",e.required?"":null)},inputs:{required:"required"},features:[r.yb([Ot])]}),t})(),xt=(()=>{class t{}return t.\u0275mod=r.Hb({type:t}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)}}),t})(),Tt=(()=>{class t{}return t.\u0275mod=r.Hb({type:t}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)},providers:[V],imports:[xt]}),t})()},"4I5i":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));const r=(()=>{function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t})()},"4Sfc":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));class r{constructor(t,e,n,r,s){this.id=t,this.name=e,this.category=n,this.description=r,this.price=s}}},"5+tZ":function(t,e,n){"use strict";n.d(e,"a",(function(){return c}));var r=n("ZUHj"),s=n("l7GE"),i=n("51Dv"),o=n("lJxs"),a=n("Cfvw");function c(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(c((n,r)=>Object(a.a)(t(n,r)).pipe(Object(o.a)((t,s)=>e(n,t,r,s))),n)):("number"==typeof e&&(n=e),e=>e.lift(new u(t,n)))}class u{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new l(t,this.project,this.concurrent))}}class l extends s.a{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}},"51Dv":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n("7o/Q");class s extends r.a{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}},"7o/Q":function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var r=n("n6bG"),s=n("gRHU"),i=n("quSY"),o=n("2QA8"),a=n("2fFW"),c=n("NJ4a");class u extends i.a{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=s.a;break;case 1:if(!t){this.destination=s.a;break}if("object"==typeof t){t instanceof u?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new l(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new l(this,t,e,n)}}[o.a](){return this}static create(t,e,n){const r=new u(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class l extends u{constructor(t,e,n,i){let o;super(),this._parentSubscriber=t;let a=this;Object(r.a)(e)?o=e:e&&(o=e.next,n=e.error,i=e.complete,e!==s.a&&(a=Object.create(e),Object(r.a)(a.unsubscribe)&&this.add(a.unsubscribe.bind(a)),a.unsubscribe=this.unsubscribe.bind(this))),this._context=a,this._next=o,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;a.a.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=a.a;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):Object(c.a)(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;Object(c.a)(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);a.a.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),a.a.useDeprecatedSynchronousErrorHandling)throw n;Object(c.a)(n)}}__tryOrSetError(t,e,n){if(!a.a.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return a.a.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(Object(c.a)(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}},"9ppp":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));const r=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})()},Cfvw:function(t,e,n){"use strict";var r=n("HDdC"),s=n("SeVD"),i=n("quSY"),o=n("kJWO"),a=n("jZKg"),c=n("Lhse"),u=n("c2HN"),l=n("I55L");function h(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[o.a]}(t))return function(t,e){return new r.a(n=>{const r=new i.a;return r.add(e.schedule(()=>{const s=t[o.a]();r.add(s.subscribe({next(t){r.add(e.schedule(()=>n.next(t)))},error(t){r.add(e.schedule(()=>n.error(t)))},complete(){r.add(e.schedule(()=>n.complete()))}}))})),r})}(t,e);if(Object(u.a)(t))return function(t,e){return new r.a(n=>{const r=new i.a;return r.add(e.schedule(()=>t.then(t=>{r.add(e.schedule(()=>{n.next(t),r.add(e.schedule(()=>n.complete()))}))},t=>{r.add(e.schedule(()=>n.error(t)))}))),r})}(t,e);if(Object(l.a)(t))return Object(a.a)(t,e);if(function(t){return t&&"function"==typeof t[c.a]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new r.a(n=>{const r=new i.a;let s;return r.add(()=>{s&&"function"==typeof s.return&&s.return()}),r.add(e.schedule(()=>{s=t[c.a](),r.add(e.schedule((function(){if(n.closed)return;let t,e;try{const n=s.next();t=n.value,e=n.done}catch(r){return void n.error(r)}e?n.complete():(n.next(t),this.schedule())})))})),r})}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}(t,e):t instanceof r.a?t:new r.a(Object(s.a)(t))}n.d(e,"a",(function(){return h}))},DH7j:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));const r=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))()},DZdm:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("lJxs"),s=n("tk/3"),i=n("fXoL");let o=(()=>{class t{constructor(t){this.http=t,this.baseUrl="/api/"}getProducts(){return this.http.get(this.baseUrl+"products")}saveOrder(t){return this.http.post(this.baseUrl+"orders",t)}authenticate(t,e){return this.http.post(this.baseUrl+"login",{name:t,password:e}).pipe(Object(r.a)(t=>(this.auth_token=t.success?t.token:null,t.success)))}saveProduct(t){return this.http.post(this.baseUrl+"products",t,this.getOptions())}updateProduct(t){return this.http.put(`${this.baseUrl}products/${t.id}`,t,this.getOptions())}deleteProduct(t){return this.http.delete(`${this.baseUrl}products/${t}`,this.getOptions())}getOrders(){return this.http.get(this.baseUrl+"orders",this.getOptions())}deleteOrder(t){return this.http.delete(`${this.baseUrl}orders/${t}`,this.getOptions())}updateOrder(t){return this.http.put(`${this.baseUrl}orders/${t.id}`,t,this.getOptions())}getOptions(){return{headers:new s.c({Authorization:`Bearer<${this.auth_token}>`})}}}return t.\u0275fac=function(e){return new(e||t)(i.Qb(s.a))},t.\u0275prov=i.Fb({token:t,factory:t.\u0275fac}),t})()},EY2u:function(t,e,n){"use strict";n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return i}));var r=n("HDdC");const s=new r.a(t=>t.complete());function i(t){return t?function(t){return new r.a(e=>t.schedule(()=>e.complete()))}(t):s}},GyhO:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n("LRne"),s=n("0EUg");function i(...t){return Object(s.a)()(Object(r.a)(...t))}},HDdC:function(t,e,n){"use strict";var r=n("7o/Q"),s=n("2QA8"),i=n("gRHU"),o=n("kJWO"),a=n("mCNh"),c=n("2fFW");n.d(e,"a",(function(){return u}));let u=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:o}=this,a=function(t,e,n){if(t){if(t instanceof r.a)return t;if(t[s.a])return t[s.a]()}return t||e||n?new r.a(t,e,n):new r.a(i.a)}(t,e,n);if(a.add(o?o.call(a,this.source):this.source||c.a.useDeprecatedSynchronousErrorHandling&&!a.syncErrorThrowable?this._subscribe(a):this._trySubscribe(a)),c.a.useDeprecatedSynchronousErrorHandling&&a.syncErrorThrowable&&(a.syncErrorThrowable=!1,a.syncErrorThrown))throw a.syncErrorValue;return a}_trySubscribe(t){try{return this._subscribe(t)}catch(e){c.a.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof r.a?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=l(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[o.a](){return this}pipe(...t){return 0===t.length?this:Object(a.b)(t)(this)}toPromise(t){return new(t=l(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function l(t){if(t||(t=c.a.Promise||Promise),!t)throw new Error("no Promise impl found");return t}},I55L:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));const r=t=>t&&"number"==typeof t.length&&"function"!=typeof t},IzEk:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("7o/Q"),s=n("4I5i"),i=n("EY2u");function o(t){return e=>0===t?Object(i.b)():e.lift(new a(t))}class a{constructor(t){if(this.total=t,this.total<0)throw new s.a}call(t,e){return e.subscribe(new c(t,this.total))}}class c extends r.a{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}},KqfI:function(t,e,n){"use strict";function r(){}n.d(e,"a",(function(){return r}))},LRne:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("z+Ro"),s=n("yCtX"),i=n("jZKg");function o(...t){let e=t[t.length-1];return Object(r.a)(e)?(t.pop(),Object(i.a)(t,e)):Object(s.a)(t)}},Lhse:function(t,e,n){"use strict";function r(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}n.d(e,"a",(function(){return s}));const s=r()},NJ4a:function(t,e,n){"use strict";function r(t){setTimeout(()=>{throw t},0)}n.d(e,"a",(function(){return r}))},NXyV:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("HDdC"),s=n("Cfvw"),i=n("EY2u");function o(t){return new r.a(e=>{let n;try{n=t()}catch(r){return void e.error(r)}return(n?Object(s.a)(n):Object(i.b)()).subscribe(e)})}},SeVD:function(t,e,n){"use strict";var r=n("ngJS"),s=n("NJ4a"),i=n("Lhse"),o=n("kJWO"),a=n("I55L"),c=n("c2HN"),u=n("XoHu");n.d(e,"a",(function(){return l}));const l=t=>{if(t&&"function"==typeof t[o.a])return l=t,t=>{const e=l[o.a]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if(Object(a.a)(t))return Object(r.a)(t);if(Object(c.a)(t))return n=t,t=>(n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,s.a),t);if(t&&"function"==typeof t[i.a])return e=t,t=>{const n=e[i.a]();for(;;){const e=n.next();if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),t};{const e=Object(u.a)(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}var e,n,l}},SpAZ:function(t,e,n){"use strict";function r(t){return t}n.d(e,"a",(function(){return r}))},VRyK:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n("HDdC"),s=n("z+Ro"),i=n("bHdf"),o=n("yCtX");function a(...t){let e=Number.POSITIVE_INFINITY,n=null,a=t[t.length-1];return Object(s.a)(a)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof a&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof r.a?t[0]:Object(i.a)(e)(Object(o.a)(t,n))}},XNiG:function(t,e,n){"use strict";var r=n("HDdC"),s=n("7o/Q"),i=n("quSY"),o=n("9ppp");class a extends i.a{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}var c=n("2QA8");n.d(e,"b",(function(){return u})),n.d(e,"a",(function(){return l}));class u extends s.a{constructor(t){super(t),this.destination=t}}let l=(()=>{class t extends r.a{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[c.a](){return new u(this)}lift(t){const e=new h(this,this);return e.operator=t,e}next(t){if(this.closed)throw new o.a;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew h(t,e),t})();class h extends l{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):i.a.EMPTY}}},XoHu:function(t,e,n){"use strict";function r(t){return null!==t&&"object"==typeof t}n.d(e,"a",(function(){return r}))},ZUHj:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("51Dv"),s=n("SeVD"),i=n("HDdC");function o(t,e,n,o,a=new r.a(t,n,o)){if(!a.closed)return e instanceof i.a?e.subscribe(a):Object(s.a)(e)(a)}},bHdf:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n("5+tZ"),s=n("SpAZ");function i(t=Number.POSITIVE_INFINITY){return Object(r.a)(s.a,t)}},bOdf:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n("5+tZ");function s(t,e){return Object(r.a)(t,e,1)}},c2HN:function(t,e,n){"use strict";function r(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}n.d(e,"a",(function(){return r}))},eIep:function(t,e,n){"use strict";n.d(e,"a",(function(){return c}));var r=n("l7GE"),s=n("51Dv"),i=n("ZUHj"),o=n("lJxs"),a=n("Cfvw");function c(t,e){return"function"==typeof e?n=>n.pipe(c((n,r)=>Object(a.a)(t(n,r)).pipe(Object(o.a)((t,s)=>e(n,t,r,s))))):e=>e.lift(new u(t))}class u{constructor(t){this.project=t}call(t,e){return e.subscribe(new l(t,this.project))}}class l extends r.a{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e,t,n)}_innerSub(t,e,n){const r=this.innerSubscription;r&&r.unsubscribe();const o=new s.a(this,e,n),a=this.destination;a.add(o),this.innerSubscription=Object(i.a)(this,t,void 0,void 0,o),this.innerSubscription!==o&&a.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,r,s){this.destination.next(e)}}},fXoL:function(t,e,n){"use strict";var r=n("XNiG"),s=n("quSY"),i=n("HDdC"),o=n("VRyK"),a=n("oB13"),c=n("x+ZX");function u(){return new r.a}function l(t,e,n){const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty("__parameters__")?t.__parameters__:Object.defineProperty(t,"__parameters__",{value:[]}).__parameters__;for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s}n.d(e,"a",(function(){return ai})),n.d(e,"b",(function(){return $a})),n.d(e,"c",(function(){return La})),n.d(e,"d",(function(){return Ma})),n.d(e,"e",(function(){return Da})),n.d(e,"f",(function(){return Nc})),n.d(e,"g",(function(){return Oc})),n.d(e,"h",(function(){return qs})),n.d(e,"i",(function(){return Ya})),n.d(e,"j",(function(){return wo})),n.d(e,"k",(function(){return Ba})),n.d(e,"l",(function(){return Co})),n.d(e,"m",(function(){return en})),n.d(e,"n",(function(){return va})),n.d(e,"o",(function(){return W})),n.d(e,"p",(function(){return h})),n.d(e,"q",(function(){return G})),n.d(e,"r",(function(){return oi})),n.d(e,"s",(function(){return Ho})),n.d(e,"t",(function(){return $o})),n.d(e,"u",(function(){return qa})),n.d(e,"v",(function(){return at})),n.d(e,"w",(function(){return xc})),n.d(e,"x",(function(){return ot})),n.d(e,"y",(function(){return vc})),n.d(e,"z",(function(){return rc})),n.d(e,"A",(function(){return d})),n.d(e,"B",(function(){return Ha})),n.d(e,"C",(function(){return Fa})),n.d(e,"D",(function(){return xo})),n.d(e,"E",(function(){return Oo})),n.d(e,"F",(function(){return Eo})),n.d(e,"G",(function(){return ko})),n.d(e,"H",(function(){return zn})),n.d(e,"I",(function(){return f})),n.d(e,"J",(function(){return Ac})),n.d(e,"K",(function(){return Go})),n.d(e,"L",(function(){return hc})),n.d(e,"M",(function(){return Ao})),n.d(e,"N",(function(){return Zo})),n.d(e,"O",(function(){return gt})),n.d(e,"P",(function(){return gi})),n.d(e,"Q",(function(){return _c})),n.d(e,"R",(function(){return _n})),n.d(e,"S",(function(){return P})),n.d(e,"T",(function(){return vn})),n.d(e,"U",(function(){return Ic})),n.d(e,"V",(function(){return fc})),n.d(e,"W",(function(){return za})),n.d(e,"X",(function(){return Gs})),n.d(e,"Y",(function(){return ua})),n.d(e,"Z",(function(){return Hn})),n.d(e,"ab",(function(){return Gn})),n.d(e,"bb",(function(){return On})),n.d(e,"cb",(function(){return ln})),n.d(e,"db",(function(){return dn})),n.d(e,"eb",(function(){return mn})),n.d(e,"fb",(function(){return fn})),n.d(e,"gb",(function(){return pn})),n.d(e,"hb",(function(){return gn})),n.d(e,"ib",(function(){return ia})),n.d(e,"jb",(function(){return Pc})),n.d(e,"kb",(function(){return oa})),n.d(e,"lb",(function(){return aa})),n.d(e,"mb",(function(){return hn})),n.d(e,"nb",(function(){return V})),n.d(e,"ob",(function(){return mi})),n.d(e,"pb",(function(){return Mi})),n.d(e,"qb",(function(){return Ni})),n.d(e,"rb",(function(){return fi})),n.d(e,"sb",(function(){return sa})),n.d(e,"tb",(function(){return ve})),n.d(e,"ub",(function(){return k})),n.d(e,"vb",(function(){return un})),n.d(e,"wb",(function(){return to})),n.d(e,"xb",(function(){return oo})),n.d(e,"yb",(function(){return yo})),n.d(e,"zb",(function(){return vr})),n.d(e,"Ab",(function(){return Ci})),n.d(e,"Bb",(function(){return zi})),n.d(e,"Cb",(function(){return Pa})),n.d(e,"Db",(function(){return _t})),n.d(e,"Eb",(function(){return Tt})),n.d(e,"Fb",(function(){return y})),n.d(e,"Gb",(function(){return v})),n.d(e,"Hb",(function(){return Ot})),n.d(e,"Ib",(function(){return kt})),n.d(e,"Jb",(function(){return Ei})),n.d(e,"Kb",(function(){return Ii})),n.d(e,"Lb",(function(){return Pi})),n.d(e,"Mb",(function(){return ji})),n.d(e,"Nb",(function(){return Ri})),n.d(e,"Ob",(function(){return Ke})),n.d(e,"Pb",(function(){return Xi})),n.d(e,"Qb",(function(){return nt})),n.d(e,"Rb",(function(){return xi})),n.d(e,"Sb",(function(){return Na})),n.d(e,"Tb",(function(){return Ti})),n.d(e,"Ub",(function(){return Di})),n.d(e,"Vb",(function(){return Ia})),n.d(e,"Wb",(function(){return Ui})),n.d(e,"Xb",(function(){return ba})),n.d(e,"Yb",(function(){return ya})),n.d(e,"Zb",(function(){return ki})),n.d(e,"ac",(function(){return ma})),n.d(e,"bc",(function(){return ja})),n.d(e,"cc",(function(){return Oi})),n.d(e,"dc",(function(){return zt})),n.d(e,"ec",(function(){return Wn})),n.d(e,"fc",(function(){return Et})),n.d(e,"gc",(function(){return Si})),n.d(e,"hc",(function(){return Zi})),n.d(e,"ic",(function(){return Qi})),n.d(e,"jc",(function(){return Ji})),n.d(e,"kc",(function(){return Ki}));const h=l("Inject",t=>({token:t})),d=l("Optional"),p=l("Self"),f=l("SkipSelf");var g=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});function m(t){for(let e in t)if(t[e]===m)return e;throw Error("Could not find renamed property on target object.")}function b(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function y(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function v(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function _(t){return w(t,t[S])||w(t,t[x])}function w(t,e){return e&&e.token===t?e:null}function C(t){return t&&(t.hasOwnProperty(O)||t.hasOwnProperty(T))?t[O]:null}const S=m({"\u0275prov":m}),O=m({"\u0275inj":m}),E=m({"\u0275provFallback":m}),x=m({ngInjectableDef:m}),T=m({ngInjectorDef:m});function k(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(k).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function A(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}const j=m({__forward_ref__:m});function P(t){return t.__forward_ref__=P,t.toString=function(){return k(this())},t}function I(t){return R(t)?t():t}function R(t){return"function"==typeof t&&t.hasOwnProperty(j)&&t.__forward_ref__===P}const N="undefined"!=typeof globalThis&&globalThis,M="undefined"!=typeof window&&window,D="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,L="undefined"!=typeof global&&global,V=N||L||M||D,U=m({"\u0275cmp":m}),F=m({"\u0275dir":m}),H=m({"\u0275pipe":m}),$=m({"\u0275mod":m}),z=m({"\u0275loc":m}),q=m({"\u0275fac":m}),B=m({__NG_ELEMENT_ID__:m});class G{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=y({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const W=new G("INJECTOR",-1),Z={},Q=/\n/gm,J=m({provide:String,useValue:m});let K,X=void 0;function Y(t){const e=X;return X=t,e}function tt(t){const e=K;return K=t,e}function et(t,e=g.Default){if(void 0===X)throw new Error("inject() must be called from an injection context");return null===X?rt(t,void 0,e):X.get(t,e&g.Optional?null:void 0,e)}function nt(t,e=g.Default){return(K||et)(I(t),e)}function rt(t,e,n){const r=_(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&g.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${k(t)}]`)}function st(t){const e=[];for(let n=0;nArray.isArray(t)?ct(t,e):e(t))}function ut(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function lt(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function ht(t,e,n){let r=pt(t,e);return r>=0?t[1|r]=n:(r=~r,function(t,e,n,r){let s=t.length;if(s==e)t.push(n,r);else if(1===s)t.push(r,t[0]),t[0]=n;else{for(s--,t.push(t[s-1],t[s]);s>e;)t[s]=t[s-2],s--;t[e]=n,t[e+1]=r}}(t,r,e,n)),r}function dt(t,e){const n=pt(t,e);if(n>=0)return t[1|n]}function pt(t,e){return function(t,e,n){let r=0,s=t.length>>1;for(;s!==r;){const n=r+(s-r>>1),i=t[n<<1];if(e===i)return n<<1;i>e?s=n:r=n+1}return~(s<<1)}(t,e)}const ft=function(){var t={OnPush:0,Default:1};return t[t.OnPush]="OnPush",t[t.Default]="Default",t}(),gt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}();function mt(t){return""+{toString:t}}const bt={},yt=[];let vt=0;function _t(t){const e=t.type,n=e.prototype,r={},s={type:e,providersResolver:null,decls:t.decls,vars:t.vars,factory:null,template:t.template||null,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:t.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:t.changeDetection===ft.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||yt,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||gt.Emulated,id:"c",styles:t.styles||yt,_:null,setInput:null,schemas:t.schemas||null,tView:null};return s._=mt(()=>{const e=t.directives,n=t.features,i=t.pipes;s.id+=vt++,s.inputs=xt(t.inputs,r),s.outputs=xt(t.outputs),n&&n.forEach(t=>t(s)),s.directiveDefs=e?()=>("function"==typeof e?e():e).map(wt):null,s.pipeDefs=i?()=>("function"==typeof i?i():i).map(Ct):null}),s}function wt(t){return At(t)||function(t){return t[F]||null}(t)}function Ct(t){return function(t){return t[H]||null}(t)}const St={};function Ot(t){const e={type:t.type,bootstrap:t.bootstrap||yt,declarations:t.declarations||yt,imports:t.imports||yt,exports:t.exports||yt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&mt(()=>{St[t.id]=t.type}),e}function Et(t,e){return mt(()=>{const n=Pt(t,!0);n.declarations=e.declarations||yt,n.imports=e.imports||yt,n.exports=e.exports||yt})}function xt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],i=s;Array.isArray(s)&&(i=s[1],s=s[0]),n[s]=r,e&&(e[s]=i)}return n}const Tt=_t;function kt(t){return{type:t.type,name:t.name,factory:null,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function At(t){return t[U]||null}function jt(t,e){return t.hasOwnProperty(q)?t[q]:null}function Pt(t,e){const n=t[$]||null;if(!n&&!0===e)throw new Error(`Type ${k(t)} does not have '\u0275mod' property.`);return n}function It(t){return Array.isArray(t)&&"object"==typeof t[1]}function Rt(t){return Array.isArray(t)&&!0===t[1]}function Nt(t){return 0!=(8&t.flags)}function Mt(t){return 2==(2&t.flags)}function Dt(t){return 1==(1&t.flags)}function Lt(t){return null!==t.template}function Vt(t){return 0!=(512&t[2])}const Ut={lFrame:ie(null),bindingsEnabled:!0,checkNoChangesMode:!1};function Ft(){return Ut.bindingsEnabled}function Ht(){return Ut.lFrame.lView}function $t(){return Ut.lFrame.tView}function zt(t){Ut.lFrame.contextLView=t}function qt(){return Ut.lFrame.previousOrParentTNode}function Bt(t,e){Ut.lFrame.previousOrParentTNode=t,Ut.lFrame.isParent=e}function Gt(){return Ut.lFrame.isParent}function Wt(){return Ut.checkNoChangesMode}function Zt(t){Ut.checkNoChangesMode=t}function Qt(){const t=Ut.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}function Jt(){return Ut.lFrame.bindingIndex}function Kt(){return Ut.lFrame.bindingIndex++}function Xt(t){const e=Ut.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function Yt(t,e){const n=Ut.lFrame;n.bindingIndex=n.bindingRootIndex=t,n.currentDirectiveIndex=e}function te(){return Ut.lFrame.currentQueryIndex}function ee(t){Ut.lFrame.currentQueryIndex=t}function ne(t,e){const n=se();Ut.lFrame=n,n.previousOrParentTNode=e,n.lView=t}function re(t,e){const n=se(),r=t[1];Ut.lFrame=n,n.previousOrParentTNode=e,n.lView=t,n.tView=r,n.contextLView=t,n.bindingIndex=r.bindingStartIndex}function se(){const t=Ut.lFrame,e=null===t?null:t.child;return null===e?ie(t):e}function ie(t){const e={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null};return null!==t&&(t.child=e),e}function oe(){const t=Ut.lFrame;return Ut.lFrame=t.parent,t.previousOrParentTNode=null,t.lView=null,t}const ae=oe;function ce(){const t=oe();t.isParent=!0,t.tView=null,t.selectedIndex=0,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.currentSanitizer=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function ue(){return Ut.lFrame.selectedIndex}function le(t){Ut.lFrame.selectedIndex=t}function he(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[o]<0&&(t[18]+=65536),(i>10>16&&(3&t[2])===e&&(t[2]+=1024,i.call(o)):i.call(o)}class be{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}let ye=void 0;function ve(t){ye=t}function _e(t){return!!t.listen}const we={createRenderer:(t,e)=>void 0!==ye?ye:"undefined"!=typeof document?document:void 0};function Ce(t,e,n){const r=_e(t);let s=0;for(;se){o=i-1;break}}}for(;i>16}function je(t,e){let n=Ae(t),r=e;for(;n>0;)r=r[15],n--;return r}function Pe(t){return"string"==typeof t?t:null==t?"":""+t}function Ie(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():Pe(t)}const Re=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(V))();function Ne(t){return t instanceof Function?t():t}let Me=!0;function De(t){const e=Me;return Me=t,e}let Le=0;function Ve(t,e){const n=Fe(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,Ue(r.data,t),Ue(e,null),Ue(r.blueprint,null));const s=He(t,e),i=t.injectorIndex;if(Te(s)){const t=ke(s),n=je(s,e),r=n[1].data;for(let s=0;s<8;s++)e[i+s]=n[t+s]|r[t+s]}return e[i+8]=s,i}function Ue(t,e){t.push(0,0,0,0,0,0,0,0,e)}function Fe(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null==e[t.injectorIndex+8]?-1:t.injectorIndex}function He(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=e[6],r=1;for(;n&&-1===n.injectorIndex;)n=(e=e[15])?e[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function $e(t,e,n){!function(t,e,n){let r="string"!=typeof n?n[B]:n.charCodeAt(0)||0;null==r&&(r=n[B]=Le++);const s=255&r,i=1<0?255&e:e}(n);if("function"==typeof s){ne(e,t);try{const t=s();if(null!=t||r&g.Optional)return t;throw new Error(`No provider for ${Ie(n)}!`)}finally{ae()}}else if("number"==typeof s){if(-1===s)return new Je(t,e);let i=null,o=Fe(t,e),a=-1,c=r&g.Host?e[16][6]:null;for((-1===o||r&g.SkipSelf)&&(a=-1===o?He(t,e):e[o+8],Qe(r,!1)?(i=e[1],o=ke(a),e=je(a,e)):o=-1);-1!==o;){a=e[o+8];const t=e[1];if(Ze(s,o,t.data)){const t=Be(o,e,n,i,r,c);if(t!==qe)return t}Qe(r,e[1].data[o+8]===c)&&Ze(s,o,e)?(i=t,o=ke(a),e=je(a,e)):o=-1}}}if(r&g.Optional&&void 0===s&&(s=null),0==(r&(g.Self|g.Host))){const t=e[9],i=tt(void 0);try{return t?t.get(n,s,r&g.Optional):rt(n,s,r&g.Optional)}finally{tt(i)}}if(r&g.Optional)return s;throw new Error(`NodeInjector: NOT_FOUND [${Ie(n)}]`)}const qe={};function Be(t,e,n,r,s,i){const o=e[1],a=o.data[t+8],c=Ge(a,o,n,null==r?Mt(a)&&Me:r!=o&&3===a.type,s&g.Host&&i===a);return null!==c?We(e,o,c,a):qe}function Ge(t,e,n,r,s){const i=t.providerIndexes,o=e.data,a=65535&i,c=t.directiveStart,u=i>>16,l=s?a+u:t.directiveEnd;for(let h=r?a:a+u;h=c&&t.type===n)return h}if(s){const t=o[c];if(t&&Lt(t)&&t.type===n)return c}return null}function We(t,e,n,r){let s=t[n];const i=e.data;if(s instanceof be){const o=s;if(o.resolving)throw new Error(`Circular dep for ${Ie(i[n])}`);const a=De(o.canSeeViewProviders);let c;o.resolving=!0,o.injectImpl&&(c=tt(o.injectImpl)),ne(t,r);try{s=t[n]=o.factory(void 0,i,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{onChanges:r,onInit:s,doCheck:i}=e;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)),s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-t,s),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i))}(n,i[n],e)}finally{o.injectImpl&&tt(c),De(a),o.resolving=!1,ae()}}return s}function Ze(t,e,n){const r=64&t,s=32&t;let i;return i=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(i&1<{const e=t(I(n));return e?e():null};let r=jt(n);if(null===r){const t=C(n);r=t&&t.factory}return r||null}(e);return null!==n?n:t=>new t}function Xe(t){return t.ngDebugContext}function Ye(t){return t.ngOriginalError}function tn(t,...e){t.error(...e)}class en{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||tn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Xe(t)?Xe(t):this._findContext(Ye(t)):null}_findOriginalError(t){let e=Ye(t);for(;e&&Ye(e);)e=Ye(e);return e}}class nn{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity}`+" (see http://g.co/ng/security#xss)"}}class rn extends nn{getTypeName(){return"HTML"}}class sn extends nn{getTypeName(){return"Style"}}class on extends nn{getTypeName(){return"Script"}}class an extends nn{getTypeName(){return"URL"}}class cn extends nn{getTypeName(){return"ResourceURL"}}function un(t){return t instanceof nn?t.changingThisBreaksApplicationSecurity:t}function ln(t,e){const n=hn(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see http://g.co/ng/security#xss)`)}return n===e}function hn(t){return t instanceof nn&&t.getTypeName()||null}function dn(t){return new rn(t)}function pn(t){return new sn(t)}function fn(t){return new on(t)}function gn(t){return new an(t)}function mn(t){return new cn(t)}let bn=!0,yn=!1;function vn(){return yn=!0,bn}function _n(){if(yn)throw new Error("Cannot enable prod mode after platform setup.");bn=!1}class wn{constructor(t){this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert");let e=this.inertDocument.body;if(null==e){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),e=this.inertDocument.createElement("body"),t.appendChild(e)}e.innerHTML='',!e.querySelector||e.querySelector("svg")?(e.innerHTML='

',this.getInertBodyElement=e.querySelector&&e.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t=""+t+"";try{t=encodeURI(t)}catch(r){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t=""+t+"";try{const e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");if("content"in e)return e.innerHTML=t,e;const n=this.inertDocument.createElement("body");return n.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let r=e.length-1;0On(t.trim())).join(", ")),this.buf.push(" ",e,'="',Un(o),'"')}var r;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();Pn.hasOwnProperty(e)&&!Tn.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(Un(t))}checkClobberedElement(t,e){if(e&&(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${t.outerHTML}`);return e}}const Ln=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Vn=/([^\#-~ |!])/g;function Un(t){return t.replace(/&/g,"&").replace(Ln,(function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"})).replace(Vn,(function(t){return"&#"+t.charCodeAt(0)+";"})).replace(//g,">")}let Fn;function Hn(t,e){let n=null;try{Fn=Fn||new wn(t);let r=e?String(e):"";n=Fn.getInertBodyElement(r);let s=5,i=r;do{if(0===s)throw new Error("Failed to sanitize html because the input is unstable");s--,r=i,i=n.innerHTML,n=Fn.getInertBodyElement(r)}while(r!==i);const o=new Dn,a=o.sanitizeChildren($n(n)||n);return vn()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n){const t=$n(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}function $n(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const zn=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}(),qn=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|Z|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:attr|calc|var))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Bn=/^url\(([^)]+)\)$/;function Gn(t){if(!(t=String(t).trim()))return"";const e=t.match(Bn);return e&&On(e[1])===e[1]||t.match(qn)&&function(t){let e=!0,n=!0;for(let r=0;ri?"":s[l+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==cr(e,u,0)||2&r&&u!==t){if(dr(r))return!1;o=!0}}}}else{if(!o&&!dr(r)&&!dr(c))return!1;if(o&&dr(c))continue;o=!1,r=c|1&r}}return dr(r)||o}function dr(t){return 0==(1&t)}function pr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+o:4&r&&(s+=" "+o);else""===s||dr(o)||(e+=gr(i,s),s=""),r=o,i=i||!dr(r);n++}return""!==s&&(e+=gr(i,s)),e}const br={};function yr(t){const e=t[3];return Rt(e)?e[3]:e}function vr(t){_r($t(),Ht(),ue()+t,Wt())}function _r(t,e,n,r){if(!r)if(3==(3&e[2])){const r=t.preOrderCheckHooks;null!==r&&de(e,r,n)}else{const r=t.preOrderHooks;null!==r&&pe(e,r,0,n)}le(n)}function wr(t,e){return t<<17|e<<2}function Cr(t){return t>>17&32767}function Sr(t){return 2|t}function Or(t){return(131068&t)>>2}function Er(t,e){return-131069&t|e<<2}function xr(t){return 1|t}function Tr(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let t=9;t19&&_r(t,e,0,Wt()),n(r,s)}finally{le(i)}}function Mr(t,e,n){Ft()&&(function(t,e,n,r){const s=n.directiveStart,i=n.directiveEnd;t.firstCreatePass||Ve(n,e),ir(r,e);const o=n.initialInputs;for(let a=s;aPromise.resolve(null))();function ls(t){return t[7]||(t[7]=[])}function hs(t){return t.cleanup||(t.cleanup=[])}function ds(t,e){const n=t[9],r=n?n.get(en,null):null;r&&r.handleError(e)}function ps(t,e,n,r,s){for(let i=0;i0&&(t[n-1][4]=r[4]);const i=lt(t,9+e);ys(r[1],r,!1,null);const o=i[5];null!==o&&o.detachView(i[1]),r[3]=null,r[4]=null,r[2]&=-129}return r}function ws(t,e){if(!(256&e[2])){const n=e[11];_e(n)&&n.destroyNode&&Ps(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Ss(t[1],t);for(;e;){let n=null;if(It(e))n=e[13];else{const t=e[9];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)It(e)&&Ss(e[1],e),e=Cs(e,t);null===e&&(e=t),It(e)&&Ss(e[1],e),n=e&&e[4]}e=n}}(e)}}function Cs(t,e){let n;return It(t)&&(n=t[6])&&2===n.type?gs(n,t):t[3]===e?null:t[3]}function Ss(t,e){if(!(256&e[2])){e[2]&=-129,e[2]|=256,function(t,e){let n;if(null!=t&&null!=(n=t.destroyHooks))for(let r=0;r=0?t[a]():t[-a].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e);const n=e[6];n&&3===n.type&&_e(e[11])&&e[11].destroy();const r=e[17];if(null!==r&&Rt(e[3])){r!==e[3]&&vs(r,e);const n=e[5];null!==n&&n.detachView(t)}}}function Os(t,e,n,r){_e(t)?t.insertBefore(e,n,r):e.insertBefore(n,r,!0)}function Es(t,e,n){_e(t)?t.appendChild(e,n):e.appendChild(n)}function xs(t,e,n,r){null!==r?Os(t,e,n,r):Es(t,e,n)}function Ts(t,e){return _e(t)?t.parentNode(e):e.parentNode}function ks(t,e,n,r){const s=function(t,e,n){let r=e.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(e=r).parent;if(null==r){const t=n[6];return 2===t.type?ms(t,n):n[0]}if(e&&5===e.type&&4&e.flags)return Jn(e,n).parentNode;if(2&r.flags){const e=t.data,n=e[e[r.index].directiveStart].encapsulation;if(n!==gt.ShadowDom&&n!==gt.Native)return null}return Jn(r,n)}(t,r,e);if(null!=s){const t=e[11],i=function(t,e){if(2===t.type){const n=gs(t,e);return null===n?null:As(n.indexOf(e,9)-9,n)}return 4===t.type||5===t.type?Jn(t,e):null}(r.parent||e[6],e);if(Array.isArray(n))for(let e=0;e-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}ws(this._lView[1],this._lView)}onDestroy(t){var e,n,r;e=this._lView[1],r=t,ls(n=this._lView).push(r),e.firstCreatePass&&hs(e).push(n[7].length-1,null)}markForCheck(){is(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){os(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Zt(!0);try{os(t,e,n)}finally{Zt(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,Ps(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class Ds extends Ms{constructor(t){super(t),this._view=t}detectChanges(){as(this._view)}checkNoChanges(){!function(t){Zt(!0);try{as(t)}finally{Zt(!1)}}(this._view)}get context(){return null}}let Ls,Vs,Us;function Fs(t,e,n){return Ls||(Ls=class extends t{}),new Ls(Jn(e,n))}function Hs(t,e,n,r){return Vs||(Vs=class extends t{constructor(t,e,n){super(),this._declarationView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=Ar(this._declarationView,e,t,16,null,e.node);n[17]=this._declarationView[this._declarationTContainer.index];const r=this._declarationView[5];null!==r&&(n[5]=r.createEmbeddedView(e)),Pr(e,n,t);const s=new Ms(n);return s._tViewNode=n[6],s}}),0===n.type?new Vs(r,n,Fs(e,n,r)):null}function $s(t,e,n,r){let s;Us||(Us=class extends t{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostView=n}get element(){return Fs(e,this._hostTNode,this._hostView)}get injector(){return new Je(this._hostTNode,this._hostView)}get parentInjector(){const t=He(this._hostTNode,this._hostView),e=je(t,this._hostView),n=function(t,e,n){if(n.parent&&-1!==n.parent.injectorIndex){const t=n.parent.injectorIndex;let e=n.parent;for(;null!=e.parent&&t==e.parent.injectorIndex;)e=e.parent;return e}let r=Ae(t),s=e,i=e[6];for(;r>1;)s=s[15],i=s[6],r--;return i}(t,this._hostView,this._hostTNode);return Te(t)&&null!=n?new Je(n,e):new Je(null,this._hostView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){return null!==this._lContainer[8]&&this._lContainer[8][t]||null}get length(){return this._lContainer.length-9}createEmbeddedView(t,e,n){const r=t.createEmbeddedView(e||{});return this.insert(r,n),r}createComponent(t,e,n,r,s){const i=n||this.parentInjector;if(!s&&null==t.ngModule&&i){const t=i.get(ot,null);t&&(s=t)}const o=t.create(i,r,void 0,s);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,r=n[1];if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");if(this.allocateContainerIfNeeded(),Rt(n[3])){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],r=new Us(e,e[6],e[3]);r.detach(r.indexOf(t))}}const s=this._adjustIndex(e);return function(t,e,n,r){const s=9+r,i=n.length;r>0&&(n[s-1][4]=e),r{class t{}return t.__NG_ELEMENT_ID__=()=>Bs(),t})();const Bs=zs,Gs=new G("Set Injector scope."),Ws={},Zs={},Qs=[];let Js=void 0;function Ks(){return void 0===Js&&(Js=new it),Js}function Xs(t,e=null,n=null,r){return e=e||Ks(),new Ys(t,n,e,r)}class Ys{constructor(t,e,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const s=[];e&&ct(e,n=>this.processProvider(n,t,e)),ct([t],t=>this.processInjectorType(t,[],s)),this.records.set(W,ni(void 0,this));const i=this.records.get(Gs);this.scope=null!=i?i.value:null,this.injectorDefTypes.forEach(t=>this.get(t)),this.source=r||("object"==typeof t?null:k(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Z,n=g.Default){this.assertNotDestroyed();const r=Y(this);try{if(!(n&g.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof G)&&_(t);e=n&&this.injectableDefInScope(n)?ni(ti(t),Ws):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&g.Self?Ks():this.parent).get(t,e=n&g.Optional&&e===Z?null:e)}catch(i){if("NullInjectorError"===i.name){if((i.ngTempTokenPath=i.ngTempTokenPath||[]).unshift(k(t)),r)throw i;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e.__source&&s.unshift(e.__source),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=k(e);if(Array.isArray(e))s=e.map(k).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):k(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(Q,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(i,t,"R3InjectorError",this.source)}throw i}finally{Y(r)}var s}toString(){const t=[];return this.records.forEach((e,n)=>t.push(k(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=I(t)))return!1;let r=C(t);const s=null==r&&t.ngModule||void 0,i=void 0===s?t:s,o=-1!==n.indexOf(i);if(void 0!==s&&(r=C(s)),null==r)return!1;if(null!=r.imports&&!o){let t;n.push(i);try{ct(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Qs))}}this.injectorDefTypes.add(i),this.records.set(i,ni(r.factory,Ws));const a=r.providers;if(null!=a&&!o){const e=t;ct(a,t=>this.processProvider(t,e,a))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=si(t=I(t))?t:I(t&&t.provide);const s=function(t,e,n){return ri(t)?ni(void 0,t.useValue):ni(ei(t,e,n),Ws)}(t,e,n);if(si(t)||!0!==t.multi){const t=this.records.get(r);t&&void 0!==t.multi&&ar()}else{let e=this.records.get(r);e?void 0===e.multi&&ar():(e=ni(void 0,Ws,!0),e.factory=()=>st(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Zs?function(t){throw new Error(`Cannot instantiate cyclic dependency! ${t}`)}(k(t)):e.value===Ws&&(e.value=Zs,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function ti(t){const e=_(t),n=null!==e?e.factory:jt(t);if(null!==n)return n;const r=C(t);if(null!==r)return r.factory;if(t instanceof G)throw new Error(`Token ${k(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function ei(t,e,n){let r=void 0;if(si(t))return ti(I(t));if(ri(t))r=()=>I(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...st(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>nt(I(t.useExisting));else{const s=I(t&&(t.useClass||t.provide));if(s||function(t,e,n){let r="";throw t&&e&&(r=` - only instances of Provider and Type are allowed, got: [${e.map(t=>t==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${k(t)}'`+r)}(e,n,t),!function(t){return!!t.deps}(t))return ti(s);r=()=>new s(...st(t.deps))}var s;return r}function ni(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function ri(t){return null!==t&&"object"==typeof t&&J in t}function si(t){return"function"==typeof t}const ii=function(t,e,n){return Xs({name:n},e,t,n)};let oi=(()=>{class t{static create(t,e){return Array.isArray(t)?ii(t,e,""):ii(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Z,t.NULL=new it,t.\u0275prov=y({token:t,providedIn:"any",factory:()=>nt(W)}),t.__NG_ELEMENT_ID__=-1,t})();const ai=new G("AnalyzeForEntryComponents");let ci=new Map;const ui=new Set;function li(t){return"string"==typeof t?t:t.text()}function hi(t,e){let n=t.styles,r=t.classes,s=0;for(let i=0;ia(Zn(t[r.index])).target:r.index;if(_e(n)){let o=null;if(!a&&c&&(o=function(t,e,n,r){const s=t.cleanup;if(null!=s)for(let i=0;in?t[n]:null}"string"==typeof t&&(i+=2)}return null}(t,e,s,r.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=i,o.__ngLastListenerFn__=i,h=!1;else{i=Vi(r,e,i,!1);const t=n.listen(p.name||f,s,i);l.push(i,t),u&&u.push(s,m,g,g+1)}}else i=Vi(r,e,i,!0),f.addEventListener(s,i,o),l.push(i),u&&u.push(s,m,g,o)}const d=r.outputs;let p;if(h&&null!==d&&(p=d[s])){const t=p.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,Ut.lFrame.contextLView))[8]}(t)}const Fi=[];function Hi(t,e,n,r,s){const i=t[n+1],o=null===e;let a=r?Cr(i):Or(i),c=!1;for(;0!==a&&(!1===c||o);){const n=t[a+1];$i(t[a],e)&&(c=!0,t[a+1]=r?xr(n):Sr(n)),a=r?Cr(n):Or(n)}c&&(t[n+1]=r?Sr(i):xr(i))}function $i(t,e){return null===t||null==e||(Array.isArray(t)?t[1]:t)===e||!(!Array.isArray(t)||"string"!=typeof e)&&pt(t,e)>=0}function zi(t,e){return function(t,e,n,r){const s=Ht(),i=$t(),o=Xt(2);if(i.firstUpdatePass&&function(t,e,n,r){const s=t.data;if(null===s[n+1]){const r=s[ue()+19],i=function(t,e){return e>=t.expandoStartIndex}(t,n);(function(t,e){return 0!=(16&t.flags)})(r)&&null===e&&!i&&(e=!1),e=function(t,e,n,r){const s=function(t){const e=Ut.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}(t);let i=e.residualClasses;if(null===s)0===e.classBindings&&(n=Bi(n=qi(null,t,e,n,!0),e.attrs,!0),i=null);else{const r=e.directiveStylingLast;if(-1===r||t[r]!==s)if(n=qi(s,t,e,n,!0),null===i){let n=function(t,e,n){const r=e.classBindings;if(0!==Or(r))return t[Cr(r)]}(t,e);void 0!==n&&Array.isArray(n)&&(n=qi(null,t,e,n[1],!0),n=Bi(n,e.attrs,!0),function(t,e,n,r){t[Cr(e.classBindings)]=r}(t,e,0,n))}else i=function(t,e,n){let r=void 0;const s=e.directiveEnd;for(let i=1+e.directiveStylingLast;i0)&&(l=!0)}else u=n;if(s)if(0!==c){const e=Cr(t[a+1]);t[r+1]=wr(e,a),0!==e&&(t[e+1]=Er(t[e+1],r)),t[a+1]=131071&t[a+1]|r<<17}else t[r+1]=wr(a,0),0!==a&&(t[a+1]=Er(t[a+1],r)),a=r;else t[r+1]=wr(c,0),0===a?a=r:t[c+1]=Er(t[c+1],r),c=r;l&&(t[r+1]=Sr(t[r+1])),Hi(t,u,r,!0),Hi(t,u,r,!1),function(t,e,n,r,s){const i=t.residualClasses;null!=i&&"string"==typeof e&&pt(i,e)>=0&&(n[r+1]=xr(n[r+1]))}(e,u,t,r),o=wr(a,c),e.classBindings=o}(s,r,e,n,i)}}(i,t,o),e!==br&&_i(s,o,e)){let r;null==n&&(r=function(){const t=Ut.lFrame;return null===t?null:t.currentSanitizer}())&&(n=r),function(t,e,n,r,s,i,o,a){if(3!==e.type)return;const c=t.data,u=c[a+1];Wi(1==(1&u)?Gi(c,e,n,s,Or(u),!0):void 0)||(Wi(i)||function(t){return 2==(2&t)}(u)&&(i=Gi(c,null,n,s,a,!0)),function(t,e,n,r,s){const i=_e(t);s?i?t.addClass(n,r):n.classList.add(r):i?t.removeClass(n,r):n.classList.remove(r)}(r,0,Qn(ue(),n),s,i))}(i,i.data[ue()+19],s,s[11],t,s[o+1]=function(t,e){return null==t||("function"==typeof e?t=e(t):"string"==typeof e?t+=e:"object"==typeof t&&(t=k(un(t)))),t}(e,n),0,o)}}(t,e,null),zi}function qi(t,e,n,r,s){let i=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[s],i=Array.isArray(e),c=i?e[1]:e,u=null===c;let l=n[s+1];l===br&&(l=u?Fi:void 0);let h=u?dt(l,r):c===r?l:void 0;if(i&&!Wi(h)&&(h=dt(e,r)),Wi(h)&&(a=h,o))return a;const d=t[s+1];s=o?Cr(d):Or(d)}if(null!==e){let t=i?e.residualClasses:e.residualStyles;null!=t&&(a=dt(t,r))}return a}function Wi(t){return void 0!==t}function Zi(t,e=""){const n=Ht(),r=$t(),s=t+19,i=r.firstCreatePass?jr(r,n[6],t,3,null,null):r.data[s],o=n[s]=function(t,e){return _e(e)?e.createText(t):e.createTextNode(t)}(e,n[11]);ks(r,n,o,i),Bt(i,!1)}function Qi(t){return Ji("",t,""),Qi}function Ji(t,e,n){const r=Ht(),s=function(t,e,n,r){return _i(t,Kt(),n)?e+Pe(n)+r:br}(r,t,e,n);return s!==br&&fs(r,ue(),s),Ji}function Ki(t,e,n,r,s){const i=Ht(),o=function(t,e,n,r,s,i){const o=wi(t,Jt(),n,s);return Xt(2),o?e+Pe(n)+r+Pe(s)+i:br}(i,t,e,n,r,s);return o!==br&&fs(i,ue(),o),Ki}function Xi(t,e,n){const r=Ht();if(_i(r,Kt(),e)){const s=ue();Hr($t(),r,s,t,e,n,!0)}return Xi}function Yi(t,e){const n=tr(t)[1],r=n.data.length-1;he(n,{directiveStart:r,directiveEnd:r+1})}function to(t){let e=Object.getPrototypeOf(t.type.prototype).constructor,n=!0;const r=[t];for(;e;){let s=void 0;if(Lt(t))s=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");s=e.\u0275dir}if(s){if(n){r.push(s);const e=t;e.inputs=eo(t.inputs),e.declaredInputs=eo(t.declaredInputs),e.outputs=eo(t.outputs);const n=s.hostBindings;n&&so(t,n);const i=s.viewQuery,o=s.contentQueries;i&&no(t,i),o&&ro(t,o),b(t.inputs,s.inputs),b(t.declaredInputs,s.declaredInputs),b(t.outputs,s.outputs),e.afterContentChecked=e.afterContentChecked||s.afterContentChecked,e.afterContentInit=t.afterContentInit||s.afterContentInit,e.afterViewChecked=t.afterViewChecked||s.afterViewChecked,e.afterViewInit=t.afterViewInit||s.afterViewInit,e.doCheck=t.doCheck||s.doCheck,e.onDestroy=t.onDestroy||s.onDestroy,e.onInit=t.onInit||s.onInit}const e=s.features;if(e)for(let r=0;r=0;r--){const s=t[r];s.hostVars=e+=s.hostVars,s.hostAttrs=Ee(s.hostAttrs,n=Ee(n,s.hostAttrs))}}(r)}function eo(t){return t===bt?{}:t===yt?[]:t}function no(t,e){const n=t.viewQuery;t.viewQuery=n?(t,r)=>{e(t,r),n(t,r)}:e}function ro(t,e){const n=t.contentQueries;t.contentQueries=n?(t,r,s)=>{e(t,r,s),n(t,r,s)}:e}function so(t,e){const n=t.hostBindings;t.hostBindings=n?(t,r)=>{e(t,r),n(t,r)}:e}class io{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function oo(){return ao.ngInherit=!0,ao}function ao(t){t.type.prototype.ngOnChanges&&(t.setInput=co,t.onChanges=function(){const t=uo(this),e=t&&t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}})}function co(t,e,n,r){const s=uo(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),i=s.current||(s.current={}),o=s.previous,a=this.declaredInputs[n],c=o[a];i[a]=new io(c&&c.currentValue,e,o===bt),t[r]=e}function uo(t){return t.__ngSimpleChanges__||null}function lo(t,e,n,r,s){if(t=I(t),Array.isArray(t))for(let i=0;i>16;if(si(t)||!t.multi){const r=new be(c,s,Ei),p=fo(a,e,s?l:l+d,h);-1===p?($e(Ve(u,o),i,a),ho(i,t,e.length),e.push(a),u.directiveStart++,u.directiveEnd++,s&&(u.providerIndexes+=65536),n.push(r),o.push(r)):(n[p]=r,o[p]=r)}else{const p=fo(a,e,l+d,h),f=fo(a,e,l,l+d),g=p>=0&&n[p],m=f>=0&&n[f];if(s&&!m||!s&&!g){$e(Ve(u,o),i,a);const l=function(t,e,n,r,s){const i=new be(t,n,Ei);return i.multi=[],i.index=e,i.componentProviders=0,po(i,s,r&&!n),i}(s?mo:go,n.length,s,r,c);!s&&m&&(n[f].providerFactory=l),ho(i,t,e.length),e.push(a),u.directiveStart++,u.directiveEnd++,s&&(u.providerIndexes+=65536),n.push(l),o.push(l)}else ho(i,t,p>-1?p:f),po(n[s?f:p],c,!s&&r);!s&&r&&m&&n[f].componentProviders++}}}function ho(t,e,n){if(si(e)||e.useClass){const r=(e.useClass||e).prototype.ngOnDestroy;r&&(t.destroyHooks||(t.destroyHooks=[])).push(n,r)}}function po(t,e,n){t.multi.push(e),n&&t.componentProviders++}function fo(t,e,n,r){for(let s=n;s{n.providersResolver=(n,r)=>function(t,e,n){const r=$t();if(r.firstCreatePass){const s=Lt(t);lo(n,r.data,r.blueprint,s,!0),lo(e,r.data,r.blueprint,s,!1)}}(n,r?r(t):t,e)}}class vo{}class _o{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${k(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let wo=(()=>{class t{}return t.NULL=new _o,t})(),Co=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=()=>So(t),t})();const So=function(t){return Fs(t,qt(),Ht())};class Oo{}const Eo=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}();let xo=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>To(),t})();const To=function(){const t=Ht(),e=Yn(qt().index,t);return function(t){const e=t[11];if(_e(e))return e;throw new Error("Cannot inject Renderer2 when the application uses Renderer3!")}(It(e)?e:t)};let ko=(()=>{class t{}return t.\u0275prov=y({token:t,providedIn:"root",factory:()=>null}),t})();class Ao{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const jo=new Ao("9.0.2");class Po{constructor(){}supports(t){return mi(t)}create(t){return new Ro(t)}}const Io=(t,e)=>e;class Ro{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||Io}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const i=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&fi(s.trackById,r)?(i&&(s=this._verifyReinsertion(s,t,r,e)),fi(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),i=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=e)t.previousIndex=t.currentIndex,e=t._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(fi(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(fi(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new No(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Do),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e?t:(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t,t)}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Do),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class No{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Mo{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&fi(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Do{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Mo,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function Lo(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new Fo(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){fi(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Fo{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Ho=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new f,new d]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=y({token:t,providedIn:"root",factory:()=>new t([new Po])}),t})(),$o=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new f,new d]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=y({token:t,providedIn:"root",factory:()=>new t([new Vo])}),t})();const zo=[new Vo],qo=new Ho([new Po]),Bo=new $o(zo);let Go=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Wo(t,Co),t})();const Wo=function(t,e){return Hs(t,e,qt(),Ht())};let Zo=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Qo(t,Co),t})();const Qo=function(t,e){return $s(t,e,qt(),Ht())},Jo={};function Ko(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const Xo=new G("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Re});class Yo extends vo{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(mr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return Ko(this.componentDef.inputs)}get outputs(){return Ko(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const i=t.get(n,Jo,s);return i!==Jo||r===Jo?i:e.get(n,r,s)}}}(t,r.injector):t,i=s.get(Oo,we),o=s.get(ko,null),a=i.createRenderer(null,this.componentDef),c=this.componentDef.selectors[0][0]||"div",u=n?function(t,e,n){if(_e(t))return t.selectRootElement(e,n===gt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(a,n,this.componentDef.encapsulation):kr(c,i.createRenderer(null,this.componentDef),function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(c)),l=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Re,clean:us,playerHandler:null,flags:0},p=Vr(0,-1,null,1,0,null,null,null,null,null),f=Ar(null,p,d,l,null,null,i,a,o,s);let g,m;re(f,null);try{const t=function(t,e,n,r,s,i){const o=n[1];n[19]=t;const a=jr(o,null,0,3,null,null),c=a.mergedAttrs=e.hostAttrs;null!==c&&(hi(a,c),null!==t&&(Ce(s,t,c),null!==a.classes&&Ns(s,t,a.classes),null!==a.styles&&Rs(s,t,a.styles)));const u=r.createRenderer(t,e),l=Ar(n,Lr(e),null,e.onPush?64:16,n[19],a,r,u,void 0);return o.firstCreatePass&&($e(Ve(a,n),o,e.type),Wr(o,a),Qr(a,n.length,1)),ss(n,l),n[19]=l}(u,this.componentDef,f,i,a);if(u)if(n)Ce(a,u,["ng-version",jo.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Ns(a,u,e.join(" "))}m=Kn(f[1],0),e&&(m.projection=e.map(t=>Array.from(t))),g=function(t,e,n,r,s){const i=n[1],o=function(t,e,n){const r=qt();t.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),Gr(t,r,1),Jr(t,e,n));const s=We(e,t,e.length-1,r);ir(s,e);const i=Jn(r,e);return i&&ir(i,e),s}(i,n,e);r.components.push(o),t[8]=o,s&&s.forEach(t=>t(o,e)),e.contentQueries&&e.contentQueries(1,o,n.length-1);const a=qt();if(i.firstCreatePass&&(null!==e.hostBindings||null!==e.hostAttrs)){le(a.index-19);const t=n[1];zr(t,e),qr(t,n,e.hostVars),Br(e,o)}return o}(t,this.componentDef,f,d,[Yi]),Pr(p,f,null)}finally{ce()}const b=new ta(this.componentType,g,Fs(Co,m,f),f,m);return n&&!h||(b.hostView._tViewNode.child=m),b}}class ta extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Ds(r),this.hostView._tViewNode=function(t,e,n,r){let s=t.node;return null==s&&(t.node=s=Ur(0,null,2,-1,null,null)),r[6]=s}(r[1],0,0,r),this.componentType=t}get injector(){return new Je(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const ea=void 0;var na=["en",[["a","p"],["AM","PM"],ea],[["AM","PM"],ea,ea],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],ea,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],ea,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",ea,"{1} 'at' {0}",ea],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let ra={};function sa(t,e,n){"string"!=typeof e&&(n=e,e=t[ua.LocaleId]),e=e.toLowerCase().replace(/_/g,"-"),ra[e]=t,n&&(ra[e][ua.ExtraData]=n)}function ia(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ca(e);if(n)return n;const r=e.split("-")[0];if(n=ca(r),n)return n;if("en"===r)return na;throw new Error(`Missing locale data for the locale "${t}".`)}function oa(t){return ia(t)[ua.CurrencyCode]||null}function aa(t){return ia(t)[ua.PluralCase]}function ca(t){return t in ra||(ra[t]=V.ng&&V.ng.common&&V.ng.common.locales&&V.ng.common.locales[t]),ra[t]}const ua=function(){var t={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return t[t.LocaleId]="LocaleId",t[t.DayPeriodsFormat]="DayPeriodsFormat",t[t.DayPeriodsStandalone]="DayPeriodsStandalone",t[t.DaysFormat]="DaysFormat",t[t.DaysStandalone]="DaysStandalone",t[t.MonthsFormat]="MonthsFormat",t[t.MonthsStandalone]="MonthsStandalone",t[t.Eras]="Eras",t[t.FirstDayOfWeek]="FirstDayOfWeek",t[t.WeekendRange]="WeekendRange",t[t.DateFormat]="DateFormat",t[t.TimeFormat]="TimeFormat",t[t.DateTimeFormat]="DateTimeFormat",t[t.NumberSymbols]="NumberSymbols",t[t.NumberFormats]="NumberFormats",t[t.CurrencyCode]="CurrencyCode",t[t.CurrencySymbol]="CurrencySymbol",t[t.CurrencyName]="CurrencyName",t[t.Currencies]="Currencies",t[t.PluralCase]="PluralCase",t[t.ExtraData]="ExtraData",t}();let la="en-US";function ha(t){var e,n;n="Expected localeId to be defined",null==(e=t)&&function(t,e,n,r){throw new Error(`ASSERTION ERROR: ${t}`+` [Expected=> null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(la=t.toLowerCase().replace(/_/g,"-"))}const da=new Map,pa={provide:wo,useClass:class extends wo{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=At(t);return new Yo(e,this.ngModule)}},deps:[ot]};class fa extends ot{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Pt(t),r=t[z]||null;r&&ha(r),this._bootstrapComponents=Ne(n.bootstrap),this._r3Injector=Xs(t,e,[{provide:ot,useValue:this},pa],k(t)),this.instance=this.get(t)}get(t,e=oi.THROW_IF_NOT_FOUND,n=g.Default){return t===oi||t===ot||t===W?this:this._r3Injector.get(t,e,n)}get componentFactoryResolver(){return this.get(wo)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class ga extends at{constructor(t){super(),this.moduleType=t,null!==Pt(t)&&function t(e){if(null!==e.\u0275mod.id){const t=e.\u0275mod.id;(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${k(e)} vs ${k(e.name)}`)})(t,da.get(t),e),da.set(t,e)}let n=e.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(e=>t(e))}(t)}create(t){return new fa(this.moduleType,t)}}function ma(t,e,n,r){return function(t,e,n,r,s,i){const o=e+n;return _i(t,o,s)?yi(t,o+1,i?r.call(i,s):r(s)):vi(t,o+1)}(Ht(),Qt(),t,e,n,r)}function ba(t,e){const n=$t();let r;const s=t+19;n.firstCreatePass?(r=function(t,e){if(e)for(let n=e.length-1;n>=0;n--){const r=e[n];if(t===r.name)return r}throw new Error(`The pipe '${t}' could not be found!`)}(e,n.pipeRegistry),n.data[s]=r,r.onDestroy&&(n.destroyHooks||(n.destroyHooks=[])).push(s,r.onDestroy)):r=n.data[s];const i=(r.factory||(r.factory=jt(r.type)))();return function(t,e,n,r){const s=n+19;s>=t.data.length&&(t.data[s]=null,t.blueprint[s]=null),e[s]=r}(n,Ht(),t,i),i}function ya(t,e,n,r,s,i){const o=Ht(),a=Xn(o,t);return function(t,e){return gi.isWrapped(e)&&(e=gi.unwrap(e),t[Jt()]=br),e}(o,function(t,e){return t[1].data[e+19].pure}(o,t)?function(t,e,n,r,s,i,o,a,c){const u=e+n;return function(t,e,n,r,s,i){const o=wi(t,e,n,r);return wi(t,e+2,s,i)||o}(t,u,s,i,o,a)?yi(t,u+4,c?r.call(c,s,i,o,a):r(s,i,o,a)):vi(t,u+4)}(o,Qt(),e,a.transform,n,r,s,i,a):a.transform(n,r,s,i))}class va extends r.a{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,i=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(i=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(i=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const a=super.subscribe(r,i,o);return t instanceof s.a&&t.add(a),a}}function _a(){return this._results[pi()]()}class wa{constructor(){this.dirty=!0,this._results=[],this.changes=new va,this.length=0;const t=pi(),e=wa.prototype;e[t]||(e[t]=_a)}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let r=0;r0)s.push(a[e/2]);else{const i=o[e+1],a=n[-r];for(let e=9;e{class t{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(nt(Ma,8))},t.\u0275prov=y({token:t,factory:t.\u0275fac}),t})();const La=new G("AppId"),Va={provide:La,useFactory:function(){return`${Ua()}${Ua()}${Ua()}`},deps:[]};function Ua(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Fa=new G("Platform Initializer"),Ha=new G("Platform ID"),$a=new G("appBootstrapListener");let za=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=y({token:t,factory:t.\u0275fac}),t})();const qa=new G("LocaleId"),Ba=new G("DefaultCurrencyCode");class Ga{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const Wa=function(t){return new ga(t)},Za=Wa,Qa=function(t){return Promise.resolve(Wa(t))},Ja=function(t){const e=Wa(t),n=Ne(Pt(t).declarations).reduce((t,e)=>{const n=At(e);return n&&t.push(new Yo(n)),t},[]);return new Ga(e,n)},Ka=Ja,Xa=function(t){return Promise.resolve(Ja(t))};let Ya=(()=>{class t{constructor(){this.compileModuleSync=Za,this.compileModuleAsync=Qa,this.compileModuleAndAllComponentsSync=Ka,this.compileModuleAndAllComponentsAsync=Xa}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=y({token:t,factory:t.\u0275fac}),t})();const tc=new G("compilerOptions"),ec=(()=>Promise.resolve(0))();function nc(t){"undefined"==typeof Zone?ec.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class rc{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new va(!1),this.onMicrotaskEmpty=new va(!1),this.onStable=new va(!1),this.onError=new va(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=e,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let t=V.requestAnimationFrame,e=V.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(V,()=>{t.lastRequestAnimationFrameId=-1,ac(t),oc(t)}),ac(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,i,o,a)=>{try{return cc(t),n.invokeTask(s,i,o,a)}finally{e&&"eventTask"===i.type&&e(),uc(t)}},onInvoke:(e,n,r,s,i,o,a)=>{try{return cc(t),e.invoke(r,s,i,o,a)}finally{uc(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,ac(t),oc(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!rc.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(rc.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,i=s.scheduleEventTask("NgZoneEvent: "+r,t,ic,sc,sc);try{return s.runTask(i,e,n)}finally{s.cancelTask(i)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function sc(){}const ic={};function oc(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function ac(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function cc(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function uc(t){t._nesting--,oc(t)}class lc{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new va,this.onMicrotaskEmpty=new va,this.onStable=new va,this.onError=new va}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let hc=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{rc.assertNotInAngularZone(),nc(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())nc(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(nt(rc))},t.\u0275prov=y({token:t,factory:t.\u0275fac}),t})(),dc=(()=>{class t{constructor(){this._applications=new Map,mc.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return mc.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=y({token:t,factory:t.\u0275fac}),t})();class pc{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}function fc(t){mc=t}let gc,mc=new pc,bc=function(t,e,n){const r=new ga(n);if(0===ci.size)return Promise.resolve(r);const s=function(t){const e=[];return t.forEach(t=>t&&e.push(...t)),e}(t.get(tc,[]).concat(e).map(t=>t.providers));if(0===s.length)return Promise.resolve(r);const i=function(){const t=V.ng;if(!t||!t.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return t.\u0275compilerFacade}(),o=oi.create({providers:s}).get(i.ResourceLoader);return function(t){const e=[],n=new Map;function r(t){let e=n.get(t);if(!e){const r=(t=>Promise.resolve(o.get(t)))(t);n.set(t,e=r.then(li))}return e}return ci.forEach((t,n)=>{const s=[];t.templateUrl&&s.push(r(t.templateUrl).then(e=>{t.template=e}));const i=t.styleUrls,o=t.styles||(t.styles=[]),a=t.styles.length;i&&i.forEach((e,n)=>{o.push(""),s.push(r(e).then(r=>{o[a+n]=r,i.splice(i.indexOf(e),1),0==i.length&&(t.styleUrls=void 0)}))});const c=Promise.all(s).then(()=>function(t){ui.delete(t)}(n));e.push(c)}),ci=new Map,Promise.all(e).then(()=>{})}().then(()=>r)};const yc=new G("AllowMultipleToken");class vc{constructor(t,e){this.name=t,this.token=e}}function _c(t,e,n=[]){const r=`Platform: ${e}`,s=new G(r);return(e=[])=>{let i=wc();if(!i||i.injector.get(yc,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Gs,useValue:"platform"});!function(t){if(gc&&!gc.destroyed&&!gc.injector.get(yc,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gc=t.get(Cc);const e=t.get(Fa,null);e&&e.forEach(t=>t())}(oi.create({providers:t,name:r}))}return function(t){const e=wc();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}(s)}}function wc(){return gc&&!gc.destroyed?gc:null}let Cc=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new lc:("zone.js"===t?void 0:t)||new rc({enableLongStackTrace:vn(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:rc,useValue:n}];return n.run(()=>{const e=oi.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),i=s.injector.get(en,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Ec(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{i.handleError(t)}})),function(t,e,n){try{const r=n();return Ni(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(i,n,()=>{const t=s.injector.get(Da);return t.runInitializers(),t.donePromise.then(()=>(ha(s.injector.get(qa,"en-US")||"en-US"),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Sc({},e);return bc(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Oc);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${k(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(nt(oi))},t.\u0275prov=y({token:t,factory:t.\u0275fac}),t})();function Sc(t,e){return Array.isArray(e)?e.reduce(Sc,t):Object.assign(Object.assign({},t),e)}let Oc=(()=>{class t{constructor(t,e,n,r,s,l){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=l,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=vn(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const h=new i.a(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),d=new i.a(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{rc.assertNotInAngularZone(),nc(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{rc.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=Object(o.a)(h,d.pipe(t=>Object(c.a)()(Object(a.a)(u)(t))))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof vo?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(ot),s=n.create(oi.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const i=s.injector.get(hc,null);return i&&s.injector.get(dc).registerApplication(s.location.nativeElement,i),this._loadComponent(s),vn()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Ec(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get($a,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Ec(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(nt(rc),nt(za),nt(oi),nt(en),nt(wo),nt(Da))},t.\u0275prov=y({token:t,factory:t.\u0275fac}),t})();function Ec(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class xc{}class Tc{}const kc={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"};let Ac=(()=>{class t{constructor(t,e){this._compiler=t,this._config=e||kc}load(t){return this.loadAndCompile(t)}loadAndCompile(t){let[e,r]=t.split("#");return void 0===r&&(r="default"),n("zn8P")(e).then(t=>t[r]).then(t=>jc(t,e,r)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,r]=t.split("#"),s="NgFactory";return void 0===r&&(r="default",s=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[r+s]).then(t=>jc(t,e,r))}}return t.\u0275fac=function(e){return new(e||t)(nt(Ya),nt(Tc,8))},t.\u0275prov=y({token:t,factory:t.\u0275fac}),t})();function jc(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}const Pc=function(t){return null},Ic=_c(null,"core",[{provide:Ha,useValue:"unknown"},{provide:Cc,deps:[oi]},{provide:dc,deps:[]},{provide:za,deps:[]}]),Rc=[{provide:Oc,useClass:Oc,deps:[rc,za,oi,en,wo,Da]},{provide:Xo,deps:[rc],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Da,useClass:Da,deps:[[new d,Ma]]},{provide:Ya,useClass:Ya,deps:[]},Va,{provide:Ho,useFactory:function(){return qo},deps:[]},{provide:$o,useFactory:function(){return Bo},deps:[]},{provide:qa,useFactory:function(t){return ha(t=t||"undefined"!=typeof $localize&&$localize.locale||"en-US"),t},deps:[[new h(qa),new d,new f]]},{provide:Ba,useValue:"USD"}];let Nc=(()=>{class t{constructor(t){}}return t.\u0275mod=Ot({type:t}),t.\u0275inj=v({factory:function(e){return new(e||t)(nt(Oc))},providers:Rc}),t})()},gRHU:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n("2fFW"),s=n("NJ4a");const i={closed:!0,next(t){},error(t){if(r.a.useDeprecatedSynchronousErrorHandling)throw t;Object(s.a)(t)},complete(){}}},hO0c:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n("fXoL"),s=n("DZdm");let i=(()=>{class t{constructor(t){this.datasource=t}authenticate(t,e){return this.datasource.authenticate(t,e)}get authenticated(){return null!=this.datasource.auth_token}clear(){this.datasource.auth_token=null}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(s.a))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})()},"hf/X":function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n("fXoL"),s=n("DZdm");let i=(()=>{class t{constructor(t){this.dataSource=t,this.orders=[],this.loaded=!1}loadOrders(){this.loaded=!0,this.dataSource.getOrders().subscribe(t=>this.orders=t)}getOrders(){return this.loaded||this.loadOrders(),this.orders}saveOrder(t){return this.dataSource.saveOrder(t)}updateOrder(t){this.dataSource.updateOrder(t).subscribe(t=>{this.orders.splice(this.orders.findIndex(e=>e.id==t.id),1,t)})}deleteOrder(t){this.dataSource.deleteOrder(t).subscribe(e=>{this.orders.splice(this.orders.findIndex(e=>t==e.id),1)})}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(s.a))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})()},jU2X:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n("fXoL"),s=n("DZdm");let i=(()=>{class t{constructor(t){this.dataSource=t,this.products=[],this.categories=[],t.getProducts().subscribe(t=>{this.products=t,this.categories=t.map(t=>t.category).filter((t,e,n)=>n.indexOf(t)==e).sort()})}getProducts(t=null){return this.products.filter(e=>null==t||t==e.category)}getProduct(t){return this.products.find(e=>e.id==t)}getCategories(){return this.categories}saveProduct(t){null==t.id||0==t.id?this.dataSource.saveProduct(t).subscribe(t=>this.products.push(t)):this.dataSource.updateProduct(t).subscribe(e=>{this.products.splice(this.products.findIndex(e=>e.id==t.id),1,t)})}deleteProduct(t){this.dataSource.deleteProduct(t).subscribe(e=>{this.products.splice(this.products.findIndex(e=>e.id==t),1)})}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(s.a))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})()},jZKg:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n("HDdC"),s=n("quSY");function i(t,e){return new r.a(n=>{const r=new s.a;let i=0;return r.add(e.schedule((function(){i!==t.length?(n.next(t[i++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}},kJWO:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));const r=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")()},l7GE:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n("7o/Q");class s extends r.a{notifyNext(t,e,n,r,s){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}},lJxs:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n("7o/Q");function s(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new i(t,e))}}class i{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new o(t,this.project,this.thisArg))}}class o extends r.a{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}},mCNh:function(t,e,n){"use strict";n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return i}));var r=n("KqfI");function s(...t){return i(t)}function i(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:r.a}},n6bG:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.d(e,"a",(function(){return r}))},ngJS:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));const r=t=>e=>{for(let n=0,r=t.length;n{const t=a.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class u extends r.b{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function l(t,e){return function(n){let r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new h(r,e));const s=Object.create(n,c);return s.source=n,s.subjectFactory=r,s}}n.d(e,"a",(function(){return l}));class h{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,r=this.subjectFactory(),s=n(r).subscribe(t);return s.add(e.subscribe(r)),s}}},ofXK:function(t,e,n){"use strict";n.d(e,"a",(function(){return _})),n.d(e,"b",(function(){return q})),n.d(e,"c",(function(){return z})),n.d(e,"d",(function(){return c})),n.d(e,"e",(function(){return C})),n.d(e,"f",(function(){return h})),n.d(e,"g",(function(){return S})),n.d(e,"h",(function(){return y})),n.d(e,"i",(function(){return V})),n.d(e,"j",(function(){return F})),n.d(e,"k",(function(){return w})),n.d(e,"l",(function(){return u})),n.d(e,"m",(function(){return W})),n.d(e,"n",(function(){return G})),n.d(e,"o",(function(){return a})),n.d(e,"p",(function(){return B})),n.d(e,"q",(function(){return i})),n.d(e,"r",(function(){return D})),n.d(e,"s",(function(){return o}));var r=n("fXoL");let s=null;function i(){return s}function o(t){s||(s=t)}class a{}const c=new r.q("DocumentToken");let u=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Object(r.Fb)({factory:l,token:t,providedIn:"platform"}),t})();function l(){return Object(r.Qb)(d)}const h=new r.q("Location Initialized");let d=(()=>{class t extends u{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=i().getLocation(),this._history=i().getHistory()}getBaseHrefFromDOM(){return i().getBaseHref(this._doc)}onPopState(t){i().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){i().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){p()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){p()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(c))},t.\u0275prov=Object(r.Fb)({factory:f,token:t,providedIn:"platform"}),t})();function p(){return!!window.history.pushState}function f(){return new d(Object(r.Qb)(c))}function g(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}function m(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}function b(t){return t&&"?"!==t[0]?"?"+t:t}let y=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Object(r.Fb)({factory:v,token:t,providedIn:"root"}),t})();function v(t){const e=Object(r.Qb)(c).location;return new w(Object(r.Qb)(u),e&&e.origin||"")}const _=new r.q("appBaseHref");let w=(()=>{class t extends y{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return g(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+b(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,r){const s=this.prepareExternalUrl(n+b(r));this._platformLocation.pushState(t,e,s)}replaceState(t,e,n,r){const s=this.prepareExternalUrl(n+b(r));this._platformLocation.replaceState(t,e,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(u),r.Qb(_,8))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),C=(()=>{class t extends y{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=g(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,r){let s=this.prepareExternalUrl(n+b(r));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.pushState(t,e,s)}replaceState(t,e,n,r){let s=this.prepareExternalUrl(n+b(r));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(u),r.Qb(_,8))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),S=(()=>{class t{constructor(t,e){this._subject=new r.n,this._urlChangeListeners=[],this._platformStrategy=t;const n=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=m(E(n)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(t,e=""){return this.path()==this.normalize(t+b(e))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,E(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(t,e="",n=null){this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+b(e)),n)}replaceState(t,e="",n=null){this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+b(e)),n)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(y),r.Qb(u))},t.normalizeQueryParams=b,t.joinWithSlash=g,t.stripTrailingSlash=m,t.\u0275prov=Object(r.Fb)({factory:O,token:t,providedIn:"root"}),t})();function O(){return new S(Object(r.Qb)(y),Object(r.Qb)(u))}function E(t){return t.replace(/\/index.html$/,"")}const x={ADP:[void 0,void 0,0],AFN:[void 0,void 0,0],ALL:[void 0,void 0,0],AMD:[void 0,void 0,2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"\u09f3"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,"\u0440.",2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN\xa5","\xa5"],COP:[void 0,"$",2],CRC:[void 0,"\u20a1",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"K\u010d",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E\xa3"],ESP:[void 0,"\u20a7",0],EUR:["\u20ac"],FJD:[void 0,"$"],FKP:[void 0,"\xa3"],GBP:["\xa3"],GEL:[void 0,"\u20be"],GIP:[void 0,"\xa3"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["\u20aa"],INR:["\u20b9"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["\xa5",void 0,0],KHR:[void 0,"\u17db"],KMF:[void 0,"CF",0],KPW:[void 0,"\u20a9",0],KRW:["\u20a9",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"\u20b8"],LAK:[void 0,"\u20ad",0],LBP:[void 0,"L\xa3",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"\u20ae",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"\u20a6"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:[void 0,"\u20b1"],PKR:[void 0,"Rs",2],PLN:[void 0,"z\u0142"],PYG:[void 0,"\u20b2",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"\u20bd"],RUR:[void 0,"\u0440."],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"\xa3"],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"\xa3"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"\xa3",0],THB:[void 0,"\u0e3f"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"\u20ba"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"\u20b4"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["\u20ab",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["CFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["\xa4"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]},T=function(){var t={Decimal:0,Percent:1,Currency:2,Scientific:3};return t[t.Decimal]="Decimal",t[t.Percent]="Percent",t[t.Currency]="Currency",t[t.Scientific]="Scientific",t}(),k=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),A=function(){var t={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};return t[t.Decimal]="Decimal",t[t.Group]="Group",t[t.List]="List",t[t.PercentSign]="PercentSign",t[t.PlusSign]="PlusSign",t[t.MinusSign]="MinusSign",t[t.Exponential]="Exponential",t[t.SuperscriptingExponent]="SuperscriptingExponent",t[t.PerMille]="PerMille",t[t.Infinity]="Infinity",t[t.NaN]="NaN",t[t.TimeSeparator]="TimeSeparator",t[t.CurrencyDecimal]="CurrencyDecimal",t[t.CurrencyGroup]="CurrencyGroup",t}();function j(t,e){const n=Object(r.ib)(t),s=n[r.Y.NumberSymbols][e];if(void 0===s){if(e===A.CurrencyDecimal)return n[r.Y.NumberSymbols][A.Decimal];if(e===A.CurrencyGroup)return n[r.Y.NumberSymbols][A.Group]}return s}const P=r.lb,I=/^(\d+)?\.((\d+)(-(\d+))?)?$/;function R(t){const e=parseInt(t);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+t);return e}class N{}let M=(()=>{class t extends N{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(P(e||this.locale)(t)){case k.Zero:return"zero";case k.One:return"one";case k.Two:return"two";case k.Few:return"few";case k.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(r.u))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();function D(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}class L{constructor(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let V=(()=>{class t{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){Object(r.T)()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,r)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new L(null,this._ngForOf,-1,-1),null===r?void 0:r),s=new U(t,n);e.push(s)}else if(null==r)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const s=this._viewContainer.get(n);this._viewContainer.move(s,r);const i=new U(t,s);e.push(i)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.N),r.Jb(r.K),r.Jb(r.s))},t.\u0275dir=r.Eb({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class U{constructor(t,e){this.record=t,this.view=e}}let F=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new H,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){$("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){$("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.N),r.Jb(r.K))},t.\u0275dir=r.Eb({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class H{constructor(){this.$implicit=null,this.ngIf=null}}function $(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${Object(r.ub)(e)}'.`)}let z=(()=>{class t{constructor(t,e="USD"){this._locale=t,this._defaultCurrencyCode=e}transform(e,n,s="symbol",i,o){if(function(t){return null==t||""===t||t!=t}(e))return null;o=o||this._locale,"boolean"==typeof s&&(console&&console.warn&&console.warn('Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".'),s=s?"symbol":"code");let a=n||this._defaultCurrencyCode;"code"!==s&&(a="symbol"===s||"symbol-narrow"===s?function(t,e,n="en"){const s=function(t){return Object(r.ib)(t)[r.Y.Currencies]}(n)[t]||x[t]||[],i=s[1];return"narrow"===e&&"string"==typeof i?i:s[0]||t}(a,"symbol"===s?"wide":"narrow",o):s);try{return function(t,e,n,s,i){const o=function(t,e="-"){const n={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},r=t.split(";"),s=r[0],i=r[1],o=-1!==s.indexOf(".")?s.split("."):[s.substring(0,s.lastIndexOf("0")+1),s.substring(s.lastIndexOf("0")+1)],a=o[0],c=o[1]||"";n.posPre=a.substr(0,a.indexOf("#"));for(let l=0;l-1&&(o=o.replace(".","")),(r=o.search(/e/i))>0?(n<0&&(n=r),n+=+o.slice(r+1),o=o.substring(0,r)):n<0&&(n=o.length),r=0;"0"===o.charAt(r);r++);if(r===(i=o.length))e=[0],n=1;else{for(i--;"0"===o.charAt(i);)i--;for(n-=r,e=[],s=0;r<=i;r++,s++)e[s]=Number(o.charAt(r))}return n>22&&(e=e.splice(0,21),a=n-1,n=1),{digits:e,exponent:a,integerLen:n}}(t);o&&(u=function(t){if(0===t.digits[0])return t;const e=t.digits.length-t.integerLen;return t.exponent?t.exponent+=2:(0===e?t.digits.push(0,0):1===e&&t.digits.push(0),t.integerLen+=2),t}(u));let l=e.minInt,h=e.minFrac,d=e.maxFrac;if(i){const t=i.match(I);if(null===t)throw new Error(`${i} is not a valid digit info`);const e=t[1],n=t[3],r=t[5];null!=e&&(l=R(e)),null!=n&&(h=R(n)),null!=r?d=R(r):null!=n&&h>d&&(d=h)}!function(t,e,n){if(e>n)throw new Error(`The minimum number of digits after fraction (${e}) is higher than the maximum (${n}).`);let r=t.digits,s=r.length-t.integerLen;const i=Math.min(Math.max(e,s),n);let o=i+t.integerLen,a=r[o];if(o>0){r.splice(Math.max(t.integerLen,o));for(let t=o;t=5)if(o-1<0){for(let e=0;e>o;e--)r.unshift(0),t.integerLen++;r.unshift(1),t.integerLen++}else r[o-1]++;for(;s=u?r.pop():c=!1),e>=10?1:0}),0);l&&(r.unshift(l),t.integerLen++)}(u,h,d);let p=u.digits,f=u.integerLen;const g=u.exponent;let m=[];for(c=p.every(t=>!t);f0?m=p.splice(f,p.length):(m=p,p=[0]);const b=[];for(p.length>=e.lgSize&&b.unshift(p.splice(-e.lgSize,p.length).join(""));p.length>e.gSize;)b.unshift(p.splice(-e.gSize,p.length).join(""));p.length&&b.unshift(p.join("")),a=b.join(j(n,r)),m.length&&(a+=j(n,s)+m.join("")),g&&(a+=j(n,A.Exponential)+"+"+g)}else a=j(n,A.Infinity);return a=t<0&&!c?e.negPre+a+e.negSuf:e.posPre+a+e.posSuf,a}(t,o,e,A.CurrencyGroup,A.CurrencyDecimal,i).replace("\xa4",n).replace("\xa4","").trim()}(function(t){if("string"==typeof t&&!isNaN(Number(t)-parseFloat(t)))return Number(t);if("number"!=typeof t)throw new Error(`${t} is not a number`);return t}(e),o,a,n,i)}catch(c){throw function(t,e){return Error(`InvalidPipeArgument: '${e}' for pipe '${Object(r.ub)(t)}'`)}(t,c.message)}}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(r.u),r.Jb(r.k))},t.\u0275pipe=r.Ib({name:"currency",type:t,pure:!0}),t})(),q=(()=>{class t{}return t.\u0275mod=r.Hb({type:t}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)},providers:[{provide:N,useClass:M}]}),t})();const B="browser";function G(t){return t===B}let W=(()=>{class t{}return t.\u0275prov=Object(r.Fb)({token:t,providedIn:"root",factory:()=>new Z(Object(r.Qb)(c),window,Object(r.Qb)(r.m))}),t})();class Z{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=()=>[0,0]}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const e=this.document.querySelector(`#${t}`);if(e)return void this.scrollToElement(e);const n=this.document.querySelector(`[name='${t}']`);if(n)return void this.scrollToElement(n)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,r=e.top+this.window.pageYOffset,s=this.offset();this.window.scrollTo(n-s[0],r-s[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}},pLZG:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n("7o/Q");function s(t,e){return function(n){return n.lift(new i(t,e))}}class i{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg))}}class o extends r.a{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}},quSY:function(t,e,n){"use strict";var r=n("DH7j"),s=n("XoHu"),i=n("n6bG");const o=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();n.d(e,"a",(function(){return a}));let a=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:a,_subscriptions:u}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof o?e.errors:e),[])}},"tk/3":function(t,e,n){"use strict";n.d(e,"a",(function(){return x})),n.d(e,"b",(function(){return H})),n.d(e,"c",(function(){return d}));var r=n("fXoL"),s=n("LRne"),i=n("HDdC"),o=n("bOdf"),a=n("pLZG"),c=n("lJxs"),u=n("ofXK");class l{}class h{}class d{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),r=n.toLowerCase(),s=t.slice(e+1).trim();this.maybeSetNormalizedName(n,r),this.headers.has(r)?this.headers.get(r).push(s):this.headers.set(r,[s])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const r=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(r,n),this.maybeSetNormalizedName(e,r))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof d?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new d;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof d?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const r=("a"===t.op?this.headers.get(e):void 0)||[];r.push(...n),this.headers.set(e,r);break;case"d":const s=t.value;if(s){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===s.indexOf(t)),0===t.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class p{encodeKey(t){return f(t)}encodeValue(t){return f(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function f(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class g{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new p,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const r=t.indexOf("="),[s,i]=-1==r?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,r)),e.decodeValue(t.slice(r+1))],o=n.get(s)||[];o.push(i),n.set(s,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const e=new g({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function m(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function b(t){return"undefined"!=typeof Blob&&t instanceof Blob}function y(t){return"undefined"!=typeof FormData&&t instanceof FormData}class v{constructor(t,e,n,r){let s;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,s=r):s=n,s&&(this.reportProgress=!!s.reportProgress,this.withCredentials=!!s.withCredentials,s.responseType&&(this.responseType=s.responseType),s.headers&&(this.headers=s.headers),s.params&&(this.params=s.params)),this.headers||(this.headers=new d),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),a)),t.setParams&&(c=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),c)),new v(e,n,s,{params:c,headers:a,reportProgress:o,responseType:r,withCredentials:i})}}const _=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class w{constructor(t,e=200,n="OK"){this.headers=t.headers||new d,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class C extends w{constructor(t={}){super(t),this.type=_.ResponseHeader}clone(t={}){return new C({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class S extends w{constructor(t={}){super(t),this.type=_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new S({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class O extends w{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function E(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let x=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let r;if(t instanceof v)r=t;else{let s=void 0;s=n.headers instanceof d?n.headers:new d(n.headers);let i=void 0;n.params&&(i=n.params instanceof g?n.params:new g({fromObject:n.params})),r=new v(t,e,void 0!==n.body?n.body:null,{headers:s,params:i,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const i=Object(s.a)(r).pipe(Object(o.a)(t=>this.handler.handle(t)));if(t instanceof v||"events"===n.observe)return i;const u=i.pipe(Object(a.a)(t=>t instanceof S));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return u.pipe(Object(c.a)(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return u.pipe(Object(c.a)(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return u.pipe(Object(c.a)(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return u.pipe(Object(c.a)(t=>t.body))}case"response":return u;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new g).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,E(n,e))}post(t,e,n={}){return this.request("POST",t,E(n,e))}put(t,e,n={}){return this.request("PUT",t,E(n,e))}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(l))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();class T{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const k=new r.q("HTTP_INTERCEPTORS");let A=(()=>{class t{intercept(t,e){return e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();const j=/^\)\]\}',?\n/;class P{}let I=(()=>{class t{constructor(){}build(){return new XMLHttpRequest}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),R=(()=>{class t{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new i.a(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const r=t.serializeBody();let s=null;const i=()=>{if(null!==s)return s;const e=1223===n.status?204:n.status,r=n.statusText||"OK",i=new d(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return s=new C({headers:i,status:e,statusText:r,url:o}),s},o=()=>{let{headers:r,status:s,statusText:o,url:a}=i(),c=null;204!==s&&(c=void 0===n.response?n.responseText:n.response),0===s&&(s=c?200:0);let u=s>=200&&s<300;if("json"===t.responseType&&"string"==typeof c){const t=c;c=c.replace(j,"");try{c=""!==c?JSON.parse(c):null}catch(l){c=t,u&&(u=!1,c={error:l,text:c})}}u?(e.next(new S({body:c,headers:r,status:s,statusText:o,url:a||void 0})),e.complete()):e.error(new O({error:c,headers:r,status:s,statusText:o,url:a||void 0}))},a=t=>{const{url:r}=i(),s=new O({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:r||void 0});e.error(s)};let c=!1;const u=r=>{c||(e.next(i()),c=!0);let s={type:_.DownloadProgress,loaded:r.loaded};r.lengthComputable&&(s.total=r.total),"text"===t.responseType&&n.responseText&&(s.partialText=n.responseText),e.next(s)},l=t=>{let n={type:_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",a),t.reportProgress&&(n.addEventListener("progress",u),null!==r&&n.upload&&n.upload.addEventListener("progress",l)),n.send(r),e.next({type:_.Sent}),()=>{n.removeEventListener("error",a),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",u),null!==r&&n.upload&&n.upload.removeEventListener("progress",l)),n.abort()}})}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(P))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();const N=new r.q("XSRF_COOKIE_NAME"),M=new r.q("XSRF_HEADER_NAME");class D{}let L=(()=>{class t{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Object(u.r)(t,this.cookieName),this.lastCookieString=t),this.lastToken}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(u.d),r.Qb(r.B),r.Qb(N))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),V=(()=>{class t{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(D),r.Qb(M))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),U=(()=>{class t{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(k,[]);this.chain=t.reduceRight((t,e)=>new T(t,e),this.backend)}return this.chain.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(h),r.Qb(r.r))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),F=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:V,useClass:A}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:N,useValue:e.cookieName}:[],e.headerName?{provide:M,useValue:e.headerName}:[]]}}}return t.\u0275mod=r.Hb({type:t}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)},providers:[V,{provide:k,useExisting:V,multi:!0},{provide:D,useClass:L},{provide:N,useValue:"XSRF-TOKEN"},{provide:M,useValue:"X-XSRF-TOKEN"}]}),t})(),H=(()=>{class t{}return t.\u0275mod=r.Hb({type:t}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)},providers:[x,{provide:l,useClass:U},R,{provide:h,useExisting:R},I,{provide:P,useExisting:I}],imports:[[F.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),t})()},tyNb:function(t,e,n){"use strict";var r=n("ofXK"),s=n("fXoL"),i=n("LRne"),o=n("Cfvw"),a=n("XNiG"),c=n("9ppp");class u extends a.a{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new c.a;return this._value}next(t){super.next(this._value=t)}}var l=n("HDdC");const h=(()=>{function t(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}return t.prototype=Object.create(Error.prototype),t})();var d=n("z+Ro"),p=n("DH7j"),f=n("l7GE"),g=n("ZUHj"),m=n("yCtX");const b={};class y{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new v(t,this.resultSelector))}}class v extends f.a{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(b),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n0){const n=this.count>=this.total?this.total:this.count,r=this.ring;for(let s=0;se.lift(new P(t))}class P{constructor(t){this.errorFactory=t}call(t,e){return e.subscribe(new I(t,this.errorFactory))}}class I extends E.a{constructor(t,e){super(t),this.errorFactory=e,this.hasValue=!1}_next(t){this.hasValue=!0,this.destination.next(t)}_complete(){if(this.hasValue)return this.destination.complete();{let e;try{e=this.errorFactory()}catch(t){e=t}this.destination.error(e)}}}function R(){return new h}function N(t=null){return e=>e.lift(new M(t))}class M{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new D(t,this.defaultValue))}}class D extends E.a{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}var L=n("SpAZ");function V(t,e){const n=arguments.length>=2;return r=>r.pipe(t?Object(O.a)((e,n)=>t(e,n,r)):L.a,T(1),n?N(e):j(()=>new h))}var U=n("51Dv");function F(t){return function(e){const n=new H(t),r=e.lift(n);return n.caught=r}}class H{constructor(t){this.selector=t}call(t,e){return e.subscribe(new $(t,this.selector,this.caught))}}class $ extends f.a{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const r=new U.a(this,void 0,void 0);this.add(r);const s=Object(g.a)(this,n,void 0,void 0,r);s!==r&&this.add(s)}}}var z=n("IzEk");function q(t,e){const n=arguments.length>=2;return r=>r.pipe(t?Object(O.a)((e,n)=>t(e,n,r)):L.a,Object(z.a)(1),n?N(e):j(()=>new h))}var B=n("5+tZ");class G{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new W(t,this.predicate,this.thisArg,this.source))}}class W extends E.a{constructor(t,e,n,r){super(t),this.predicate=e,this.thisArg=n,this.source=r,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}var Z=n("eIep"),Q=n("GyhO");function J(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new K(t,e,n))}}class K{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new X(t,this.accumulator,this.seed,this.hasSeed))}}class X extends E.a{constructor(t,e,n,r){super(t),this.accumulator=e,this._seed=n,this.hasSeed=r,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(r){this.destination.error(r)}this.seed=n,this.destination.next(n)}}var Y=n("bOdf"),tt=n("mCNh"),et=n("vkgz"),nt=n("quSY");class rt{constructor(t){this.callback=t}call(t,e){return e.subscribe(new st(t,this.callback))}}class st extends E.a{constructor(t,e){super(t),this.add(new nt.a(e))}}var it=n("bHdf");n.d(e,"a",(function(){return pe})),n.d(e,"b",(function(){return Cn})),n.d(e,"c",(function(){return Sn})),n.d(e,"d",(function(){return xn})),n.d(e,"e",(function(){return Un})),n.d(e,"f",(function(){return An}));class ot{constructor(t,e){this.id=t,this.url=e}}class at extends ot{constructor(t,e,n="imperative",r=null){super(t,e),this.navigationTrigger=n,this.restoredState=r}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class ct extends ot{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class ut extends ot{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class lt extends ot{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ht extends ot{constructor(t,e,n,r){super(t,e),this.urlAfterRedirects=n,this.state=r}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class dt extends ot{constructor(t,e,n,r){super(t,e),this.urlAfterRedirects=n,this.state=r}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class pt extends ot{constructor(t,e,n,r,s){super(t,e),this.urlAfterRedirects=n,this.state=r,this.shouldActivate=s}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class ft extends ot{constructor(t,e,n,r){super(t,e),this.urlAfterRedirects=n,this.state=r}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class gt extends ot{constructor(t,e,n,r){super(t,e),this.urlAfterRedirects=n,this.state=r}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class mt{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class bt{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class yt{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class vt{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class _t{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class wt{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Ct{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}let St=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=s.Db({type:t,selectors:[["ng-component"]],decls:1,vars:0,template:function(t,e){1&t&&s.Kb(0,"router-outlet")},directives:function(){return[An]},encapsulation:2}),t})();class Ot{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function Et(t){return new Ot(t)}function xt(t){const e=Error("NavigationCancelingError: "+t);return e.ngNavigationCancelingError=!0,e}function Tt(t,e,n){const r=n.path.split("/");if(r.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.lengthe.indexOf(t)>-1):t===e}function Mt(t){return Array.prototype.concat.apply([],t)}function Dt(t){return t.length>0?t[t.length-1]:null}function Lt(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Vt(t){return Object(s.pb)(t)?t:Object(s.qb)(t)?Object(o.a)(Promise.resolve(t)):Object(i.a)(t)}function Ut(t,e,n){return n?function(t,e){return Rt(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!zt(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const r in n.children){if(!e.children[r])return!1;if(!t(e.children[r],n.children[r]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>Nt(t[n],e[n]))}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,r,s){if(n.segments.length>s.length)return!!zt(n.segments.slice(0,s.length),s)&&!r.hasChildren();if(n.segments.length===s.length){if(!zt(n.segments,s))return!1;for(const e in r.children){if(!n.children[e])return!1;if(!t(n.children[e],r.children[e]))return!1}return!0}{const t=s.slice(0,n.segments.length),i=s.slice(n.segments.length);return!!zt(n.segments,t)&&!!n.children.primary&&e(n.children.primary,r,i)}}(e,n,n.segments)}(t.root,e.root)}class Ft{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Et(this.queryParams)),this._queryParamMap}toString(){return Wt.serialize(this)}}class Ht{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Lt(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Zt(this)}}class $t{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=Et(this.parameters)),this._parameterMap}toString(){return te(this)}}function zt(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function qt(t,e){let n=[];return Lt(t.children,(t,r)=>{"primary"===r&&(n=n.concat(e(t,r)))}),Lt(t.children,(t,r)=>{"primary"!==r&&(n=n.concat(e(t,r)))}),n}class Bt{}class Gt{parse(t){const e=new ie(t);return new Ft(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){var e;return`${`/${function t(e,n){if(!e.hasChildren())return Zt(e);if(n){const n=e.children.primary?t(e.children.primary,!1):"",r=[];return Lt(e.children,(e,n)=>{"primary"!==n&&r.push(`${n}:${t(e,!1)}`)}),r.length>0?`${n}(${r.join("//")})`:n}{const n=qt(e,(n,r)=>"primary"===r?[t(e.children.primary,!1)]:[`${r}:${t(n,!1)}`]);return`${Zt(e)}/(${n.join("//")})`}}(t.root,!0)}`}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Jt(e)}=${Jt(t)}`).join("&"):`${Jt(e)}=${Jt(n)}`});return e.length?`?${e.join("&")}`:""}(t.queryParams)}${"string"==typeof t.fragment?`#${e=t.fragment,encodeURI(e)}`:""}`}}const Wt=new Gt;function Zt(t){return t.segments.map(t=>te(t)).join("/")}function Qt(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Jt(t){return Qt(t).replace(/%3B/gi,";")}function Kt(t){return Qt(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Xt(t){return decodeURIComponent(t)}function Yt(t){return Xt(t.replace(/\+/g,"%20"))}function te(t){return`${Kt(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Kt(t)}=${Kt(e[t])}`).join("")}`;var e}const ee=/^[^\/()?;=#]+/;function ne(t){const e=t.match(ee);return e?e[0]:""}const re=/^[^=?&#]+/,se=/^[^?&#]+/;class ie{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Ht([],{}):new Ht([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n.primary=new Ht(t,e)),n}parseSegment(){const t=ne(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new $t(Xt(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=ne(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=ne(this.remaining);t&&(n=t,this.capture(n))}t[Xt(e)]=Xt(n)}parseQueryParam(t){const e=function(t){const e=t.match(re);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(se);return e?e[0]:""}(this.remaining);t&&(n=t,this.capture(n))}const r=Yt(e),s=Yt(n);if(t.hasOwnProperty(r)){let e=t[r];Array.isArray(e)||(e=[e],t[r]=e),e.push(s)}else t[r]=s}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=ne(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error(`Cannot parse url '${this.url}'`);let s=void 0;n.indexOf(":")>-1?(s=n.substr(0,n.indexOf(":")),this.capture(s),this.capture(":")):t&&(s="primary");const i=this.parseChildren();e[s]=1===Object.keys(i).length?i.primary:new Ht([],i),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class oe{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=ae(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=ae(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=ce(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return ce(t,this._root).map(t=>t.value)}}function ae(t,e){if(t===e.value)return e;for(const n of e.children){const e=ae(t,n);if(e)return e}return null}function ce(t,e){if(t===e.value)return[e];for(const n of e.children){const r=ce(t,n);if(r.length)return r.unshift(e),r}return[]}class ue{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function le(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class he extends oe{constructor(t,e){super(t),this.snapshot=e,be(this,t)}toString(){return this.snapshot.toString()}}function de(t,e){const n=function(t,e){const n=new ge([],{},{},"",{},"primary",e,null,t.root,-1,{});return new me("",new ue(n,[]))}(t,e),r=new u([new $t("",{})]),s=new u({}),i=new u({}),o=new u({}),a=new u(""),c=new pe(r,s,o,a,i,"primary",e,n.root);return c.snapshot=n.root,new he(new ue(c,[]),n)}class pe{constructor(t,e,n,r,s,i,o,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=s,this.outlet=i,this.component=o,this._futureSnapshot=a}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(Object(C.a)(t=>Et(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(Object(C.a)(t=>Et(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function fe(t,e="emptyOnly"){const n=t.pathFromRoot;let r=0;if("always"!==e)for(r=n.length-1;r>=1;){const t=n[r],e=n[r-1];if(t.routeConfig&&""===t.routeConfig.path)r--;else{if(e.component)break;r--}}return function(t){return t.reduce((t,e)=>({params:Object.assign(Object.assign({},t.params),e.params),data:Object.assign(Object.assign({},t.data),e.data),resolve:Object.assign(Object.assign({},t.resolve),e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(r))}class ge{constructor(t,e,n,r,s,i,o,a,c,u,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=s,this.outlet=i,this.component=o,this.routeConfig=a,this._urlSegment=c,this._lastPathIndex=u,this._resolve=l}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=Et(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Et(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class me extends oe{constructor(t,e){super(e),this.url=t,be(this,e)}toString(){return ye(this._root)}}function be(t,e){e.value._routerState=t,e.children.forEach(e=>be(t,e))}function ye(t){const e=t.children.length>0?` { ${t.children.map(ye).join(", ")} } `:"";return`${t.value}${e}`}function ve(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Rt(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Rt(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nRt(t.parameters,r[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||_e(t.parent,e.parent))}function we(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function Ce(t,e,n,r,s){let i={};return r&&Lt(r,(t,e)=>{i[e]=Array.isArray(t)?t.map(t=>`${t}`):`${t}`}),new Ft(n.root===t?e:function t(e,n,r){const s={};return Lt(e.children,(e,i)=>{s[i]=e===n?r:t(e,n,r)}),new Ht(e.segments,s)}(n.root,t,e),i,s)}class Se{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&we(n[0]))throw new Error("Root segment cannot have matrix parameters");const r=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(r&&r!==Dt(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class Oe{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function Ee(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets.primary:`${t}`}function xe(t,e,n){if(t||(t=new Ht([],{})),0===t.segments.length&&t.hasChildren())return Te(t,e,n);const r=function(t,e,n){let r=0,s=e;const i={match:!1,pathIndex:0,commandIndex:0};for(;s=n.length)return i;const e=t.segments[s],o=Ee(n[r]),a=r0&&void 0===o)break;if(o&&a&&"object"==typeof a&&void 0===a.outlets){if(!Pe(o,a,e))return i;r+=2}else{if(!Pe(o,{},e))return i;r++}s++}return{match:!0,pathIndex:s,commandIndex:r}}(t,e,n),s=n.slice(r.commandIndex);if(r.match&&r.pathIndex{null!==n&&(s[r]=xe(t.children[r],e,n))}),Lt(t.children,(t,e)=>{void 0===r[e]&&(s[e]=t)}),new Ht(t.segments,s)}}function ke(t,e,n){const r=t.segments.slice(0,e);let s=0;for(;s{null!==t&&(e[n]=ke(new Ht([],{}),0,t))}),e}function je(t){const e={};return Lt(t,(t,n)=>e[n]=`${t}`),e}function Pe(t,e,n){return t==n.path&&Rt(e,n.parameters)}class Ie{constructor(t,e,n,r){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=r}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),ve(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const r=le(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,r[e],n),delete r[e]}),Lt(r,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const r=t.value,s=e?e.value:null;if(r===s)if(r.component){const s=n.getContext(r.outlet);s&&this.deactivateChildRoutes(t,e,s.children)}else this.deactivateChildRoutes(t,e,n);else s&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),r=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:r})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const r=le(t),s=t.value.component?n.children:e;Lt(r,(t,e)=>this.deactivateRouteAndItsChildren(t,s)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const r=le(e);t.children.forEach(t=>{this.activateRoutes(t,r[t.value.outlet],n),this.forwardEvent(new wt(t.value.snapshot))}),t.children.length&&this.forwardEvent(new vt(t.value.snapshot))}activateRoutes(t,e,n){const r=t.value,s=e?e.value:null;if(ve(r),r===s)if(r.component){const s=n.getOrCreateContext(r.outlet);this.activateChildRoutes(t,e,s.children)}else this.activateChildRoutes(t,e,n);else if(r.component){const e=n.getOrCreateContext(r.outlet);if(this.routeReuseStrategy.shouldAttach(r.snapshot)){const t=this.routeReuseStrategy.retrieve(r.snapshot);this.routeReuseStrategy.store(r.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Re(t.route)}else{const n=function(t){for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(r.snapshot),s=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=r,e.resolver=s,e.outlet&&e.outlet.activateWith(r,s),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Re(t){ve(t.value),t.children.forEach(Re)}function Ne(t){return"function"==typeof t}function Me(t){return t instanceof Ft}class De{constructor(t){this.segmentGroup=t||null}}class Le{constructor(t){this.urlTree=t}}function Ve(t){return new l.a(e=>e.error(new De(t)))}function Ue(t){return new l.a(e=>e.error(new Le(t)))}function Fe(t){return new l.a(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class He{constructor(t,e,n,r,i){this.configLoader=e,this.urlSerializer=n,this.urlTree=r,this.config=i,this.allowRedirects=!0,this.ngModule=t.get(s.x)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,"primary").pipe(Object(C.a)(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(F(t=>{if(t instanceof Le)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof De)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,"primary").pipe(Object(C.a)(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(F(t=>{if(t instanceof De)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const r=t.segments.length>0?new Ht([],{primary:t}):t;return new Ft(r,e,n)}expandSegmentGroup(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(Object(C.a)(t=>new Ht([],t))):this.expandSegment(t,n,e,n.segments,r,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Object(i.a)({});const n=[],r=[],s={};return Lt(t,(t,i)=>{const o=e(i,t).pipe(Object(C.a)(t=>s[i]=t));"primary"===i?n.push(o):r.push(o)}),i.a.apply(null,n.concat(r)).pipe(Object(S.a)(),V(),Object(C.a)(()=>s))}(n.children,(n,r)=>this.expandSegmentGroup(t,e,r,n))}expandSegment(t,e,n,r,s,o){return Object(i.a)(...n).pipe(Object(C.a)(a=>this.expandSegmentAgainstRoute(t,e,n,a,r,s,o).pipe(F(t=>{if(t instanceof De)return Object(i.a)(null);throw t}))),Object(S.a)(),q(t=>!!t),F((t,n)=>{if(t instanceof h||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,r,s))return Object(i.a)(new Ht([],{}));throw new De(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,r,s,i,o){return Be(r)!==i?Ve(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,s):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,s,i):Ve(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,r,s,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,s,i)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,r){const s=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Ue(s):this.lineralizeSegments(n,s).pipe(Object(B.a)(n=>{const s=new Ht(n,{});return this.expandSegment(t,s,e,n,r,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,s,i){const{matched:o,consumedSegments:a,lastChild:c,positionalParamSegments:u}=$e(e,r,s);if(!o)return Ve(e);const l=this.applyRedirectCommands(a,r.redirectTo,u);return r.redirectTo.startsWith("/")?Ue(l):this.lineralizeSegments(r,l).pipe(Object(B.a)(r=>this.expandSegment(t,e,n,r.concat(s.slice(c)),i,!1)))}matchSegmentAgainstRoute(t,e,n,r){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(Object(C.a)(t=>(n._loadedConfig=t,new Ht(r,{})))):Object(i.a)(new Ht(r,{}));const{matched:s,consumedSegments:o,lastChild:a}=$e(e,n,r);if(!s)return Ve(e);const c=r.slice(a);return this.getChildConfig(t,n,r).pipe(Object(B.a)(t=>{const n=t.module,r=t.routes,{segmentGroup:s,slicedSegments:a}=function(t,e,n,r){return n.length>0&&function(t,e,n){return n.some(n=>qe(t,e,n)&&"primary"!==Be(n))}(t,n,r)?{segmentGroup:ze(new Ht(e,function(t,e){const n={};n.primary=e;for(const r of t)""===r.path&&"primary"!==Be(r)&&(n[Be(r)]=new Ht([],{}));return n}(r,new Ht(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return n.some(n=>qe(t,e,n))}(t,n,r)?{segmentGroup:ze(new Ht(t.segments,function(t,e,n,r){const s={};for(const i of n)qe(t,e,i)&&!r[Be(i)]&&(s[Be(i)]=new Ht([],{}));return Object.assign(Object.assign({},r),s)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,o,c,r);return 0===a.length&&s.hasChildren()?this.expandChildren(n,r,s).pipe(Object(C.a)(t=>new Ht(o,t))):0===r.length&&0===a.length?Object(i.a)(new Ht(o,{})):this.expandSegment(n,s,r,a,"primary",!0).pipe(Object(C.a)(t=>new Ht(o.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Object(i.a)(new kt(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Object(i.a)(e._loadedConfig):function(t,e,n){const r=e.canLoad;return r&&0!==r.length?Object(o.a)(r).pipe(Object(C.a)(r=>{const s=t.get(r);let i;if(function(t){return t&&Ne(t.canLoad)}(s))i=s.canLoad(e,n);else{if(!Ne(s))throw new Error("Invalid CanLoad guard");i=s(e,n)}return Vt(i)})).pipe(Object(S.a)(),(s=t=>!0===t,t=>t.lift(new G(s,void 0,t)))):Object(i.a)(!0);var s}(t.injector,e,n).pipe(Object(B.a)(n=>n?this.configLoader.load(t.injector,e).pipe(Object(C.a)(t=>(e._loadedConfig=t,t))):function(t){return new l.a(e=>e.error(xt(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Object(i.a)(new kt([],t))}lineralizeSegments(t,e){let n=[],r=e.root;for(;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return Object(i.a)(n);if(r.numberOfChildren>1||!r.children.primary)return Fe(t.redirectTo);r=r.children.primary}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,r){const s=this.createSegmentGroup(t,e.root,n,r);return new Ft(s,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Lt(t,(t,r)=>{if("string"==typeof t&&t.startsWith(":")){const s=t.substring(1);n[r]=e[s]}else n[r]=t}),n}createSegmentGroup(t,e,n,r){const s=this.createSegments(t,e.segments,n,r);let i={};return Lt(e.children,(e,s)=>{i[s]=this.createSegmentGroup(t,e,n,r)}),new Ht(s,i)}createSegments(t,e,n,r){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,r):this.findOrReturn(e,n))}findPosParam(t,e,n){const r=n[e.path.substring(1)];if(!r)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return r}findOrReturn(t,e){let n=0;for(const r of e){if(r.path===t.path)return e.splice(n),r;n++}return t}}function $e(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const r=(e.matcher||Tt)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function ze(t){if(1===t.numberOfChildren&&t.children.primary){const e=t.children.primary;return new Ht(t.segments.concat(e.segments),e.children)}return t}function qe(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Be(t){return t.outlet||"primary"}class Ge{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class We{constructor(t,e){this.component=t,this.route=e}}function Ze(t,e,n){const r=t._root;return function t(e,n,r,s,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=le(n);return e.children.forEach(e=>{!function(e,n,r,s,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=e.value,a=n?n.value:null,c=r?r.getContext(e.value.outlet):null;if(a&&o.routeConfig===a.routeConfig){const u=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!zt(t.url,e.url);case"pathParamsOrQueryParamsChange":return!zt(t.url,e.url)||!Rt(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!_e(t,e)||!Rt(t.queryParams,e.queryParams);case"paramsChange":default:return!_e(t,e)}}(a,o,o.routeConfig.runGuardsAndResolvers);u?i.canActivateChecks.push(new Ge(s)):(o.data=a.data,o._resolvedData=a._resolvedData),t(e,n,o.component?c?c.children:null:r,s,i),u&&i.canDeactivateChecks.push(new We(c&&c.outlet&&c.outlet.component||null,a))}else a&&Je(n,c,i),i.canActivateChecks.push(new Ge(s)),t(e,null,o.component?c?c.children:null:r,s,i)}(e,o[e.value.outlet],r,s.concat([e.value]),i),delete o[e.value.outlet]}),Lt(o,(t,e)=>Je(t,r.getContext(e),i)),i}(r,e?e._root:null,n,[r.value])}function Qe(t,e,n){const r=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function Je(t,e,n){const r=le(t),s=t.value;Lt(r,(t,r)=>{Je(t,s.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new We(s.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,s))}const Ke=Symbol("INITIAL_VALUE");function Xe(){return Object(Z.a)(t=>function(...t){let e=null,n=null;return Object(d.a)(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&Object(p.a)(t[0])&&(t=t[0]),Object(m.a)(t,n).lift(new y(e))}(...t.map(t=>t.pipe(Object(z.a)(1),function(...t){const e=t[t.length-1];return Object(d.a)(e)?(t.pop(),n=>Object(Q.a)(t,n,e)):e=>Object(Q.a)(t,e)}(Ke)))).pipe(J((t,e)=>{let n=!1;return e.reduce((t,r,s)=>{if(t!==Ke)return t;if(r===Ke&&(n=!0),!n){if(!1===r)return r;if(s===e.length-1||Me(r))return r}return t},t)},Ke),Object(O.a)(t=>t!==Ke),Object(C.a)(t=>Me(t)?t:!0===t),Object(z.a)(1)))}function Ye(t,e){return null!==t&&e&&e(new _t(t)),Object(i.a)(!0)}function tn(t,e){return null!==t&&e&&e(new yt(t)),Object(i.a)(!0)}function en(t,e,n){const r=e.routeConfig?e.routeConfig.canActivate:null;if(!r||0===r.length)return Object(i.a)(!0);const s=r.map(r=>Object(_.a)(()=>{const s=Qe(r,e,n);let i;if(function(t){return t&&Ne(t.canActivate)}(s))i=Vt(s.canActivate(e,t));else{if(!Ne(s))throw new Error("Invalid CanActivate guard");i=Vt(s(e,t))}return i.pipe(q())}));return Object(i.a)(s).pipe(Xe())}function nn(t,e,n){const r=e[e.length-1],s=e.slice(0,e.length-1).reverse().map(t=>function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null}(t)).filter(t=>null!==t).map(e=>Object(_.a)(()=>{const s=e.guards.map(s=>{const i=Qe(s,e.node,n);let o;if(function(t){return t&&Ne(t.canActivateChild)}(i))o=Vt(i.canActivateChild(r,t));else{if(!Ne(i))throw new Error("Invalid CanActivateChild guard");o=Vt(i(r,t))}return o.pipe(q())});return Object(i.a)(s).pipe(Xe())}));return Object(i.a)(s).pipe(Xe())}class rn{}class sn{constructor(t,e,n,r,s,i){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=r,this.paramsInheritanceStrategy=s,this.relativeLinkResolution=i}recognize(){try{const t=cn(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,e=this.processSegmentGroup(this.config,t,"primary"),n=new ge([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},"primary",this.rootComponentType,null,this.urlTree.root,-1,{}),r=new ue(n,e),s=new me(this.url,r);return this.inheritParamsAndData(s._root),Object(i.a)(s)}catch(t){return new l.a(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=fe(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=qt(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};t.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),r=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${r}'.`)}e[t.value.outlet]=t.value})}(n),n.sort((t,e)=>"primary"===t.value.outlet?-1:"primary"===e.value.outlet?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,r){for(const i of t)try{return this.processSegmentAgainstRoute(i,e,n,r)}catch(s){if(!(s instanceof rn))throw s}if(this.noLeftoversInUrl(e,n,r))return[];throw new rn}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,r){if(t.redirectTo)throw new rn;if((t.outlet||"primary")!==r)throw new rn;let s,i=[],o=[];if("**"===t.path){const i=n.length>0?Dt(n).parameters:{};s=new ge(n,i,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,hn(t),r,t.component,t,on(e),an(e)+n.length,dn(t))}else{const a=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new rn;return{consumedSegments:[],lastChild:0,parameters:{}}}const r=(e.matcher||Tt)(n,t,e);if(!r)throw new rn;const s={};Lt(r.posParams,(t,e)=>{s[e]=t.path});const i=r.consumed.length>0?Object.assign(Object.assign({},s),r.consumed[r.consumed.length-1].parameters):s;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:i}}(e,t,n);i=a.consumedSegments,o=n.slice(a.lastChild),s=new ge(i,a.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,hn(t),r,t.component,t,on(e),an(e)+i.length,dn(t))}const a=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:c,slicedSegments:u}=cn(e,i,o,a,this.relativeLinkResolution);if(0===u.length&&c.hasChildren()){const t=this.processChildren(a,c);return[new ue(s,t)]}if(0===a.length&&0===u.length)return[new ue(s,[])];const l=this.processSegment(a,c,u,"primary");return[new ue(s,l)]}}function on(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function an(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)e=e._sourceSegment,n+=e._segmentIndexShift?e._segmentIndexShift:0;return n-1}function cn(t,e,n,r,s){if(n.length>0&&function(t,e,n){return n.some(n=>un(t,e,n)&&"primary"!==ln(n))}(t,n,r)){const s=new Ht(e,function(t,e,n,r){const s={};s.primary=r,r._sourceSegment=t,r._segmentIndexShift=e.length;for(const i of n)if(""===i.path&&"primary"!==ln(i)){const n=new Ht([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,s[ln(i)]=n}return s}(t,e,r,new Ht(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return n.some(n=>un(t,e,n))}(t,n,r)){const i=new Ht(t.segments,function(t,e,n,r,s,i){const o={};for(const a of r)if(un(t,n,a)&&!s[ln(a)]){const n=new Ht([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===i?t.segments.length:e.length,o[ln(a)]=n}return Object.assign(Object.assign({},s),o)}(t,e,n,r,t.children,s));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}const i=new Ht(t.segments,t.children);return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}function un(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function ln(t){return t.outlet||"primary"}function hn(t){return t.data||{}}function dn(t){return t.resolve||{}}function pn(t,e,n,r){const s=Qe(t,e,r);return Vt(s.resolve?s.resolve(e,n):s(e,n))}function fn(t){return function(e){return e.pipe(Object(Z.a)(e=>{const n=t(e);return n?Object(o.a)(n).pipe(Object(C.a)(()=>e)):Object(o.a)([e])}))}}class gn{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const mn=new s.q("ROUTES");class bn{constructor(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(Object(C.a)(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const r=n.create(t);return new kt(Mt(r.injector.get(mn)).map(It),r)}))}loadModuleFactory(t){return"string"==typeof t?Object(o.a)(this.loader.load(t)):Vt(t()).pipe(Object(B.a)(t=>t instanceof s.v?Object(i.a)(t):Object(o.a)(this.compiler.compileModuleAsync(t))))}}class yn{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function vn(t){throw t}function _n(t,e,n){return e.parse("/")}function wn(t,e){return Object(i.a)(null)}let Cn=(()=>{class t{constructor(t,e,n,r,i,o,c,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new a.a,this.errorHandler=vn,this.malformedUriErrorHandler=_n,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:wn,afterPreactivation:wn},this.urlHandlingStrategy=new yn,this.routeReuseStrategy=new gn,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=i.get(s.x),this.console=i.get(s.W);const h=i.get(s.z);this.isNgZoneEnabled=h instanceof s.z,this.resetConfig(l),this.currentUrlTree=new Ft(new Ht([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new bn(o,c,t=>this.triggerEvent(new mt(t)),t=>this.triggerEvent(new bt(t))),this.routerState=de(this.currentUrlTree,this.rootComponentType),this.transitions=new u({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(Object(O.a)(t=>0!==t.id),Object(C.a)(t=>Object.assign(Object.assign({},t),{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Object(Z.a)(t=>{let n=!1,r=!1;return Object(i.a)(t).pipe(Object(et.a)(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign(Object.assign({},this.lastSuccessfulNavigation),{previousNavigation:null}):null}}),Object(Z.a)(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Object(i.a)(t).pipe(Object(Z.a)(t=>{const n=this.transitions.getValue();return e.next(new at(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?w.a:[t]}),Object(Z.a)(t=>Promise.resolve(t)),(r=this.ngModule.injector,s=this.configLoader,o=this.urlSerializer,a=this.config,function(t){return t.pipe(Object(Z.a)(t=>function(t,e,n,r,s){return new He(t,e,n,r,s).apply()}(r,s,o,t.extractedUrl,a).pipe(Object(C.a)(e=>Object.assign(Object.assign({},t),{urlAfterRedirects:e})))))}),Object(et.a)(t=>{this.currentNavigation=Object.assign(Object.assign({},this.currentNavigation),{finalUrl:t.urlAfterRedirects})}),function(t,e,n,r,s){return function(i){return i.pipe(Object(B.a)(i=>function(t,e,n,r,s="emptyOnly",i="legacy"){return new sn(t,e,n,r,s,i).recognize()}(t,e,i.urlAfterRedirects,n(i.urlAfterRedirects),r,s).pipe(Object(C.a)(t=>Object.assign(Object.assign({},i),{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),Object(et.a)(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),Object(et.a)(t=>{const n=new ht(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));var r,s,o,a;if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:r,source:s,restoredState:o,extras:a}=t,c=new at(n,this.serializeUrl(r),s,o);e.next(c);const u=de(r,this.rootComponentType).snapshot;return Object(i.a)(Object.assign(Object.assign({},t),{targetSnapshot:u,urlAfterRedirects:r,extras:Object.assign(Object.assign({},a),{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),w.a}),fn(t=>{const{targetSnapshot:e,id:n,extractedUrl:r,rawUrl:s,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:r,rawUrlTree:s,skipLocationChange:!!i,replaceUrl:!!o})}),Object(et.a)(t=>{const e=new dt(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),Object(C.a)(t=>Object.assign(Object.assign({},t),{guards:Ze(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Object(B.a)(n=>{const{targetSnapshot:r,currentSnapshot:s,guards:{canActivateChecks:a,canDeactivateChecks:c}}=n;return 0===c.length&&0===a.length?Object(i.a)(Object.assign(Object.assign({},n),{guardsResult:!0})):function(t,e,n,r){return Object(o.a)(t).pipe(Object(B.a)(t=>function(t,e,n,r,s){const o=e&&e.routeConfig?e.routeConfig.canDeactivate:null;if(!o||0===o.length)return Object(i.a)(!0);const a=o.map(i=>{const o=Qe(i,e,s);let a;if(function(t){return t&&Ne(t.canDeactivate)}(o))a=Vt(o.canDeactivate(t,e,n,r));else{if(!Ne(o))throw new Error("Invalid CanDeactivate guard");a=Vt(o(t,e,n,r))}return a.pipe(q())});return Object(i.a)(a).pipe(Xe())}(t.component,t.route,n,e,r)),q(t=>!0!==t,!0))}(c,r,s,t).pipe(Object(B.a)(n=>n&&"boolean"==typeof n?function(t,e,n,r){return Object(o.a)(e).pipe(Object(Y.a)(e=>Object(o.a)([tn(e.route.parent,r),Ye(e.route,r),nn(t,e.path,n),en(t,e.route,n)]).pipe(Object(S.a)(),q(t=>!0!==t,!0))),q(t=>!0!==t,!0))}(r,a,t,e):Object(i.a)(n)),Object(C.a)(t=>Object.assign(Object.assign({},n),{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),Object(et.a)(t=>{if(Me(t.guardsResult)){const e=xt(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),Object(et.a)(t=>{const e=new pt(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),Object(O.a)(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new ut(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),fn(t=>{if(t.guards.canActivateChecks.length)return Object(i.a)(t).pipe(Object(et.a)(t=>{const e=new ft(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),(e=this.paramsInheritanceStrategy,n=this.ngModule.injector,function(t){return t.pipe(Object(B.a)(t=>{const{targetSnapshot:r,guards:{canActivateChecks:s}}=t;return s.length?Object(o.a)(s).pipe(Object(Y.a)(t=>function(t,e,n,r){return function(t,e,n,r){const s=Object.keys(t);if(0===s.length)return Object(i.a)({});if(1===s.length){const i=s[0];return pn(t[i],e,n,r).pipe(Object(C.a)(t=>({[i]:t})))}const a={};return Object(o.a)(s).pipe(Object(B.a)(s=>pn(t[s],e,n,r).pipe(Object(C.a)(t=>(a[s]=t,t))))).pipe(V(),Object(C.a)(()=>a))}(t._resolve,t,e,r).pipe(Object(C.a)(e=>(t._resolvedData=e,t.data=Object.assign(Object.assign({},t.data),fe(t,n).resolve),null)))}(t.route,r,e,n)),function(t,e){return arguments.length>=2?function(n){return Object(tt.a)(J(t,e),T(1),N(e))(n)}:function(e){return Object(tt.a)(J((e,n,r)=>t(e,n,r+1)),T(1))(e)}}((t,e)=>t),Object(C.a)(e=>t)):Object(i.a)(t)}))}),Object(et.a)(t=>{const e=new gt(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}));var e,n}),fn(t=>{const{targetSnapshot:e,id:n,extractedUrl:r,rawUrl:s,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:r,rawUrlTree:s,skipLocationChange:!!i,replaceUrl:!!o})}),Object(C.a)(t=>{const e=function(t,e,n){const r=function t(e,n,r){if(r&&e.shouldReuseRoute(n.value,r.value.snapshot)){const s=r.value;s._futureSnapshot=n.value;const i=function(e,n,r){return n.children.map(n=>{for(const s of r.children)if(e.shouldReuseRoute(s.value.snapshot,n.value))return t(e,n,s);return t(e,n)})}(e,n,r);return new ue(s,i)}{const r=e.retrieve(n.value);if(r){const t=r.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let r=0;rt(e,n));return new ue(r,i)}}var s}(t,e._root,n?n._root:void 0);return new he(r,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign(Object.assign({},t),{targetRouterState:e})}),Object(et.a)(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),(a=this.rootContexts,c=this.routeReuseStrategy,l=t=>this.triggerEvent(t),Object(C.a)(t=>(new Ie(c,t.targetRouterState,t.currentRouterState,l).activate(a),t))),Object(et.a)({next(){n=!0},complete(){n=!0}}),(s=()=>{if(!n&&!r){this.resetUrlToCurrentUrlTree();const n=new ut(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null},t=>t.lift(new rt(s))),F(n=>{if(r=!0,(s=n)&&s.ngNavigationCancelingError){const r=Me(n.url);r||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const s=new ut(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(s),r?setTimeout(()=>{const e=this.urlHandlingStrategy.merge(n.url,this.rawUrlTree);return this.scheduleNavigation(e,"imperative",null,{skipLocationChange:t.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy},{resolve:t.resolve,reject:t.reject,promise:t.promise})},0):t.resolve(!1)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const r=new lt(t.id,this.serializeUrl(t.extractedUrl),n);e.next(r);try{t.resolve(this.errorHandler(n))}catch(i){t.reject(i)}}var s;return w.a}));var s,a,c,l}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign(Object.assign({},this.getTransition()),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",r=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,r,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){At(t),this.config=t.map(It),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:r,fragment:i,preserveQueryParams:o,queryParamsHandling:a,preserveFragment:c}=e;Object(s.T)()&&o&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const u=n||this.routerState.root,l=c?this.currentUrlTree.fragment:i;let h=null;if(a)switch(a){case"merge":h=Object.assign(Object.assign({},this.currentUrlTree.queryParams),r);break;case"preserve":h=this.currentUrlTree.queryParams;break;default:h=r||null}else h=o?this.currentUrlTree.queryParams:r||null;return null!==h&&(h=this.removeEmptyProps(h)),function(t,e,n,r,s){if(0===n.length)return Ce(e.root,e.root,e,r,s);const i=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new Se(!0,0,t);let e=0,n=!1;const r=t.reduce((t,r,s)=>{if("object"==typeof r&&null!=r){if(r.outlets){const e={};return Lt(r.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(r.segmentPath)return[...t,r.segmentPath]}return"string"!=typeof r?[...t,r]:0===s?(r.split("/").forEach((r,s)=>{0==s&&"."===r||(0==s&&""===r?n=!0:".."===r?e++:""!=r&&t.push(r))}),t):[...t,r]},[]);return new Se(n,e,r)}(n);if(i.toRoot())return Ce(e.root,new Ht([],{}),e,r,s);const o=function(t,e,n){if(t.isAbsolute)return new Oe(e.root,!0,0);if(-1===n.snapshot._lastPathIndex)return new Oe(n.snapshot._urlSegment,!0,0);const r=we(t.commands[0])?0:1;return function(t,e,n){let r=t,s=e,i=n;for(;i>s;){if(i-=s,r=r.parent,!r)throw new Error("Invalid number of '../'");s=r.segments.length}return new Oe(r,!1,s-i)}(n.snapshot._urlSegment,n.snapshot._lastPathIndex+r,t.numberOfDoubleDots)}(i,e,t),a=o.processChildren?Te(o.segmentGroup,o.index,i.commands):xe(o.segmentGroup,o.index,i.commands);return Ce(o.segmentGroup,a,e,r,s)}(u,this.currentUrlTree,t,h,l)}navigateByUrl(t,e={skipLocationChange:!1}){Object(s.T)()&&this.isNgZoneEnabled&&!s.z.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=Me(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const r=t[n];return null!=r&&(e[n]=r),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new ct(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,r,s){const i=this.getTransition();if(i&&"imperative"!==e&&"imperative"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"hashchange"==e&&"popstate"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"popstate"==e&&"hashchange"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);let o,a,c;s?(o=s.resolve,a=s.reject,c=s.promise):c=new Promise((t,e)=>{o=t,a=e});const u=++this.navigationId;return this.setTransition({id:u,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:r,resolve:o,reject:a,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,r){const s=this.urlSerializer.serialize(t);r=r||{},this.location.isCurrentPathEqualTo(s)||e?this.location.replaceState(s,"",Object.assign(Object.assign({},r),{navigationId:n})):this.location.go(s,"",Object.assign(Object.assign({},r),{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}return t.\u0275fac=function(t){s.Tb()},t.\u0275dir=s.Eb({type:t}),t})(),Sn=(()=>{class t{constructor(t,e,n,r,s){this.router=t,this.route=e,this.commands=[],null==n&&r.setAttribute(s.nativeElement,"tabindex","0")}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}set preserveQueryParams(t){Object(s.T)()&&console&&console.warn&&console.warn("preserveQueryParams is deprecated!, use queryParamsHandling instead."),this.preserve=t}onClick(){const t={skipLocationChange:En(this.skipLocationChange),replaceUrl:En(this.replaceUrl)};return this.router.navigateByUrl(this.urlTree,t),!0}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,preserveQueryParams:En(this.preserve),queryParamsHandling:this.queryParamsHandling,preserveFragment:En(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(s.Jb(Cn),s.Jb(pe),s.Rb("tabindex"),s.Jb(s.D),s.Jb(s.l))},t.\u0275dir=s.Eb({type:t,selectors:[["","routerLink","",5,"a",5,"area"]],hostBindings:function(t,e){1&t&&s.Ub("click",(function(t){return e.onClick()}))},inputs:{routerLink:"routerLink",preserveQueryParams:"preserveQueryParams",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state"}}),t})(),On=(()=>{class t{constructor(t,e,n){this.router=t,this.route=e,this.locationStrategy=n,this.commands=[],this.subscription=t.events.subscribe(t=>{t instanceof ct&&this.updateTargetUrlAndHref()})}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}set preserveQueryParams(t){Object(s.T)()&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead."),this.preserve=t}ngOnChanges(t){this.updateTargetUrlAndHref()}ngOnDestroy(){this.subscription.unsubscribe()}onClick(t,e,n,r){if(0!==t||e||n||r)return!0;if("string"==typeof this.target&&"_self"!=this.target)return!0;const s={skipLocationChange:En(this.skipLocationChange),replaceUrl:En(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,s),!1}updateTargetUrlAndHref(){this.href=this.locationStrategy.prepareExternalUrl(this.router.serializeUrl(this.urlTree))}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,preserveQueryParams:En(this.preserve),queryParamsHandling:this.queryParamsHandling,preserveFragment:En(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(s.Jb(Cn),s.Jb(pe),s.Jb(r.h))},t.\u0275dir=s.Eb({type:t,selectors:[["a","routerLink",""],["area","routerLink",""]],hostVars:2,hostBindings:function(t,e){1&t&&s.Ub("click",(function(t){return e.onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)})),2&t&&(s.Pb("href",e.href,s.ec),s.Ab("target",e.target))},inputs:{routerLink:"routerLink",preserveQueryParams:"preserveQueryParams",target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state"},features:[s.xb()]}),t})();function En(t){return""===t||!!t}let xn=(()=>{class t{constructor(t,e,n,r,s){this.router=t,this.element=e,this.renderer=n,this.link=r,this.linkWithHref=s,this.classes=[],this.isActive=!1,this.routerLinkActiveOptions={exact:!1},this.subscription=t.events.subscribe(t=>{t instanceof ct&&this.update()})}ngAfterContentInit(){this.links.changes.subscribe(t=>this.update()),this.linksWithHrefs.changes.subscribe(t=>this.update()),this.update()}set routerLinkActive(t){const e=Array.isArray(t)?t:t.split(" ");this.classes=e.filter(t=>!!t)}ngOnChanges(t){this.update()}ngOnDestroy(){this.subscription.unsubscribe()}update(){this.links&&this.linksWithHrefs&&this.router.navigated&&Promise.resolve().then(()=>{const t=this.hasActiveLinks();this.isActive!==t&&(this.isActive=t,this.classes.forEach(e=>{t?this.renderer.addClass(this.element.nativeElement,e):this.renderer.removeClass(this.element.nativeElement,e)}))})}isLinkActive(t){return e=>t.isActive(e.urlTree,this.routerLinkActiveOptions.exact)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.linkWithHref&&t(this.linkWithHref)||this.links.some(t)||this.linksWithHrefs.some(t)}}return t.\u0275fac=function(e){return new(e||t)(s.Jb(Cn),s.Jb(s.l),s.Jb(s.D),s.Jb(Sn,8),s.Jb(On,8))},t.\u0275dir=s.Eb({type:t,selectors:[["","routerLinkActive",""]],contentQueries:function(t,e,n){var r;1&t&&(s.Cb(n,Sn,!0),s.Cb(n,On,!0)),2&t&&(s.bc(r=s.Vb())&&(e.links=r),s.bc(r=s.Vb())&&(e.linksWithHrefs=r))},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",routerLinkActive:"routerLinkActive"},exportAs:["routerLinkActive"],features:[s.xb()]}),t})();class Tn{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new kn,this.attachRef=null}}class kn{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new Tn,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}let An=(()=>{class t{constructor(t,e,n,r,i){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=i,this.activated=null,this._activatedRoute=null,this.activateEvents=new s.n,this.deactivateEvents=new s.n,this.name=r||"primary",t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),r=this.parentContexts.getOrCreateContext(this.name).children,s=new jn(t,r,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,s),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}return t.\u0275fac=function(e){return new(e||t)(s.Jb(kn),s.Jb(s.N),s.Jb(s.j),s.Rb("name"),s.Jb(s.h))},t.\u0275dir=s.Eb({type:t,selectors:[["router-outlet"]],outputs:{activateEvents:"activate",deactivateEvents:"deactivate"},exportAs:["outlet"]}),t})();class jn{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===pe?this.route:t===kn?this.childContexts:this.parent.get(t,e)}}class Pn{}class In{preload(t,e){return Object(i.a)(null)}}let Rn=(()=>{class t{constructor(t,e,n,r,s){this.router=t,this.injector=r,this.preloadingStrategy=s,this.loader=new bn(e,n,e=>t.triggerEvent(new mt(e)),e=>t.triggerEvent(new bt(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(Object(O.a)(t=>t instanceof ct),Object(Y.a)(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(s.x);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const r of e)if(r.loadChildren&&!r.canLoad&&r._loadedConfig){const t=r._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else r.loadChildren&&!r.canLoad?n.push(this.preloadConfig(t,r)):r.children&&n.push(this.processRoutes(t,r.children));return Object(o.a)(n).pipe(Object(it.a)(),Object(C.a)(t=>{}))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Object(B.a)(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}return t.\u0275fac=function(e){return new(e||t)(s.Qb(Cn),s.Qb(s.w),s.Qb(s.i),s.Qb(s.r),s.Qb(Pn))},t.\u0275prov=s.Fb({token:t,factory:t.\u0275fac}),t})(),Nn=(()=>{class t{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof at?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof ct&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof Ct&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new Ct(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}return t.\u0275fac=function(t){s.Tb()},t.\u0275dir=s.Eb({type:t}),t})();const Mn=new s.q("ROUTER_CONFIGURATION"),Dn=new s.q("ROUTER_FORROOT_GUARD"),Ln=[r.g,{provide:Bt,useClass:Gt},{provide:Cn,useFactory:function(t,e,n,s,i,o,a,c,u={},l,h){const d=new Cn(null,e,n,s,i,o,a,Mt(c));if(l&&(d.urlHandlingStrategy=l),h&&(d.routeReuseStrategy=h),u.errorHandler&&(d.errorHandler=u.errorHandler),u.malformedUriErrorHandler&&(d.malformedUriErrorHandler=u.malformedUriErrorHandler),u.enableTracing){const t=Object(r.q)();d.events.subscribe(e=>{t.logGroup(`Router Event: ${e.constructor.name}`),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return u.onSameUrlNavigation&&(d.onSameUrlNavigation=u.onSameUrlNavigation),u.paramsInheritanceStrategy&&(d.paramsInheritanceStrategy=u.paramsInheritanceStrategy),u.urlUpdateStrategy&&(d.urlUpdateStrategy=u.urlUpdateStrategy),u.relativeLinkResolution&&(d.relativeLinkResolution=u.relativeLinkResolution),d},deps:[s.g,Bt,kn,r.g,s.r,s.w,s.i,mn,Mn,[class{},new s.A],[class{},new s.A]]},kn,{provide:pe,useFactory:function(t){return t.routerState.root},deps:[Cn]},{provide:s.w,useClass:s.J},Rn,In,class{preload(t,e){return e().pipe(F(()=>Object(i.a)(null)))}},{provide:Mn,useValue:{enableTracing:!1}}];function Vn(){return new s.y("Router",Cn)}let Un=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Ln,zn(e),{provide:Dn,useFactory:$n,deps:[[Cn,new s.A,new s.I]]},{provide:Mn,useValue:n||{}},{provide:r.h,useFactory:Hn,deps:[r.l,[new s.p(r.a),new s.A],Mn]},{provide:Nn,useFactory:Fn,deps:[Cn,r.m,Mn]},{provide:Pn,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:In},{provide:s.y,multi:!0,useFactory:Vn},[qn,{provide:s.d,multi:!0,useFactory:Bn,deps:[qn]},{provide:Wn,useFactory:Gn,deps:[qn]},{provide:s.b,multi:!0,useExisting:Wn}]]}}static forChild(e){return{ngModule:t,providers:[zn(e)]}}}return t.\u0275mod=s.Hb({type:t}),t.\u0275inj=s.Gb({factory:function(e){return new(e||t)(s.Qb(Dn,8),s.Qb(Cn,8))}}),t})();function Fn(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Nn(t,e,n)}function Hn(t,e,n={}){return n.useHash?new r.e(t,e):new r.k(t,e)}function $n(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function zn(t){return[{provide:s.a,multi:!0,useValue:t},{provide:mn,multi:!0,useValue:t}]}let qn=(()=>{class t{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new a.a}appInitializer(){return this.injector.get(r.f,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(Cn),r=this.injector.get(Mn);if(this.isLegacyDisabled(r)||this.isLegacyEnabled(r))t(!0);else if("disabled"===r.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==r.initialNavigation)throw new Error(`Invalid initialNavigation options: '${r.initialNavigation}'`);n.hooks.afterPreactivation=()=>this.initNavigation?Object(i.a)(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(Mn),n=this.injector.get(Rn),r=this.injector.get(Nn),i=this.injector.get(Cn),o=this.injector.get(s.g);t===o.components[0]&&(this.isLegacyEnabled(e)?i.initialNavigation():this.isLegacyDisabled(e)&&i.setUpLocationChangeListener(),n.setUpPreloading(),r.init(),i.resetRootComponentType(o.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}return t.\u0275fac=function(e){return new(e||t)(s.Qb(s.r))},t.\u0275prov=s.Fb({token:t,factory:t.\u0275fac}),t})();function Bn(t){return t.appInitializer.bind(t)}function Gn(t){return t.bootstrapListener.bind(t)}const Wn=new s.q("Router Initializer")},vkgz:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("7o/Q"),s=n("KqfI"),i=n("n6bG");function o(t,e,n){return function(r){return r.lift(new a(t,e,n))}}class a{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new c(t,this.nextOrObserver,this.error,this.complete))}}class c extends r.a{constructor(t,e,n,r){super(t),this._tapNext=s.a,this._tapError=s.a,this._tapComplete=s.a,this._tapError=n||s.a,this._tapComplete=r||s.a,Object(i.a)(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||s.a,this._tapError=e.error||s.a,this._tapComplete=e.complete||s.a)}_next(t){try{this._tapNext.call(this._context,t)}catch(e){return void this.destination.error(e)}this.destination.next(t)}_error(t){try{this._tapError.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}},"x+ZX":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n("7o/Q");function s(){return function(t){return t.lift(new i(t))}}class i{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new o(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class o extends r.a{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}},yCtX:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("HDdC"),s=n("ngJS"),i=n("jZKg");function o(t,e){return e?Object(i.a)(t,e):new r.a(Object(s.a)(t))}},"z+Ro":function(t,e,n){"use strict";function r(t){return t&&"function"==typeof t.schedule}n.d(e,"a",(function(){return r}))},zUnb:function(t,e,n){"use strict";n.r(e);var r=n("fXoL"),s=n("ofXK");class i extends s.o{constructor(){super()}supportsDOMEvents(){return!0}}class o extends i{static makeCurrent(){Object(s.s)(new o)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=c||(c=document.querySelector("base"),c)?c.getAttribute("href"):null;return null==e?null:(n=e,a||(a=document.createElement("a")),a.setAttribute("href",n),"/"===a.pathname.charAt(0)?a.pathname:"/"+a.pathname);var n}resetBaseElement(){c=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return Object(s.r)(document.cookie,t)}}let a,c=null;const u=new r.q("TRANSITION_ID"),l=[{provide:r.d,useFactory:function(t,e,n){return()=>{n.get(r.e).donePromise.then(()=>{const n=Object(s.q)();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[u,s.d,r.r],multi:!0}];class h{static init(){Object(r.V)(new h)}addToWindow(t){r.nb.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},r.nb.getAllAngularTestabilities=()=>t.getAllTestabilities(),r.nb.getAllAngularRootElements=()=>t.getAllRootElements(),r.nb.frameworkStabilizers||(r.nb.frameworkStabilizers=[]),r.nb.frameworkStabilizers.push(t=>{const e=r.nb.getAllAngularTestabilities();let n=e.length,s=!1;const i=function(e){s=s||e,n--,0==n&&t(s)};e.forEach((function(t){t.whenStable(i)}))})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?Object(s.q)().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const d=new r.q("EventManagerPlugins");let p=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),m=(()=>{class t extends g{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>Object(s.q)().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(s.d))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();const b={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/"},y=/%COMP%/g;function v(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let w=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new C(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case r.O.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new S(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case r.O.Native:case r.O.ShadowDom:return new O(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=v(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(p),r.Qb(m),r.Qb(r.c))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();class C{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(b[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=b[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=b[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&r.F.DashCase?t.style.setProperty(e,n,s&r.F.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&r.F.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,_(n)):this.eventManager.addEventListener(t,e,_(n))}}class S extends C{constructor(t,e,n,r){super(t),this.component=n;const s=v(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(y,r+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(y,t)}(r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class O extends C{constructor(t,e,n,s){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=s,this.shadowRoot=s.encapsulation===r.O.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const i=v(s.id,s.styles,[]);for(let r=0;r{class t extends f{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(s.d))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();const x=["alt","control","meta","shift"],T={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},k={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},A={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let j=(()=>{class t extends f{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const i=t.parseEventName(n),o=t.eventCallback(i.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Object(s.q)().onAndCancel(e,i.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let i="";if(x.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),i+=t+".")}),i+=s,0!=n.length||0===s.length)return null;const o={};return o.domEventName=r,o.fullKey=i,o}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&k.hasOwnProperty(e)&&(e=k[e]))}return T[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),x.forEach(r=>{r!=n&&(0,A[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(s.d))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();const P=[{provide:r.B,useValue:s.p},{provide:r.C,useValue:function(){o.makeCurrent(),h.init()},multi:!0},{provide:s.d,useFactory:function(){return Object(r.tb)(document),document},deps:[]}],I=Object(r.Q)(r.U,"browser",P),R=[[],{provide:r.X,useValue:"root"},{provide:r.m,useFactory:function(){return new r.m},deps:[]},{provide:d,useClass:E,multi:!0,deps:[s.d,r.z,r.B]},{provide:d,useClass:j,multi:!0,deps:[s.d]},[],{provide:w,useClass:w,deps:[p,m,r.c]},{provide:r.E,useExisting:w},{provide:g,useExisting:m},{provide:m,useClass:m,deps:[s.d]},{provide:r.L,useClass:r.L,deps:[r.z]},{provide:p,useClass:p,deps:[d,r.z]},[]];let N=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:r.c,useValue:e.appId},{provide:u,useExisting:r.c},l]}}}return t.\u0275mod=r.Hb({type:t}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)(r.Qb(t,12))},providers:R,imports:[s.b,r.f]}),t})();"undefined"!=typeof window&&window;var M=n("tyNb");let D=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=r.Db({type:t,selectors:[["app"]],decls:1,vars:0,template:function(t,e){1&t&&r.Kb(0,"router-outlet")},directives:[M.f],encapsulation:2}),t})();var L=n("3Pt+"),V=n("jU2X"),U=n("4Sfc"),F=n("Cfvw");let H=(()=>{class t{constructor(){this.products=[new U.a(1,"Product 1","Category 1","Product 1 (Category 1)",100),new U.a(2,"Product 2","Category 1","Product 2 (Category 1)",100),new U.a(3,"Product 3","Category 1","Product 3 (Category 1)",100),new U.a(4,"Product 4","Category 1","Product 4 (Category 1)",100),new U.a(5,"Product 5","Category 1","Product 5 (Category 1)",100),new U.a(6,"Product 6","Category 2","Product 6 (Category 2)",100),new U.a(7,"Product 7","Category 2","Product 7 (Category 2)",100),new U.a(8,"Product 8","Category 2","Product 8 (Category 2)",100),new U.a(9,"Product 9","Category 2","Product 9 (Category 2)",100),new U.a(10,"Product 10","Category 2","Product 10 (Category 2)",100),new U.a(11,"Product 11","Category 3","Product 11 (Category 3)",100),new U.a(12,"Product 12","Category 3","Product 12 (Category 3)",100),new U.a(13,"Product 13","Category 3","Product 13 (Category 3)",100),new U.a(14,"Product 14","Category 3","Product 14 (Category 3)",100),new U.a(15,"Product 15","Category 3","Product 15 (Category 3)",100)]}getProducts(){return Object(F.a)([this.products])}saveOrder(t){return console.log(JSON.stringify(t)),Object(F.a)([t])}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),$=(()=>{class t{constructor(){this.lines=[],this.itemCount=0,this.cartPrice=0}addLine(t,e=1){let n=this.lines.find(e=>e.product.id==t.id);null!=n?n.quantity+=e:this.lines.push(new z(t,e)),this.recalculate()}updateQuantity(t,e){let n=this.lines.find(e=>e.product.id==t.id);null!=n&&(n.quantity=Number(e)),this.recalculate()}removeLine(t){let e=this.lines.findIndex(e=>e.product.id==t);this.lines.splice(e,1),this.recalculate()}clear(){this.lines=[],this.itemCount=0,this.cartPrice=0}recalculate(){this.itemCount=0,this.cartPrice=0,this.lines.forEach(t=>{this.itemCount+=t.quantity,this.cartPrice+=t.quantity*t.product.price})}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();class z{constructor(t,e){this.product=t,this.quantity=e}get lineTotal(){return this.quantity*this.product.price}}let q=(()=>{class t{constructor(t){this.cart=t,this.shipped=!1}clear(){this.id=null,this.name=this.address=this.city=null,this.state=this.zip=this.country=null,this.shipped=!1,this.cart.clear()}}return t.\u0275fac=function(e){return new(e||t)(r.Qb($))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();var B=n("hf/X"),G=n("DZdm"),W=n("tk/3"),Z=n("hO0c"),Q=n("XNiG");let J=(()=>{class t{constructor(){this.connEvents=new Q.a,window.addEventListener("online",t=>this.handleConnectionChange(t)),window.addEventListener("offline",t=>this.handleConnectionChange(t))}handleConnectionChange(t){this.connEvents.next(this.connected)}get connected(){return window.navigator.onLine}get Changes(){return this.connEvents}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),K=(()=>{class t{}return t.\u0275mod=r.Hb({type:t}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)},providers:[V.a,$,q,B.a,{provide:H,useClass:G.a},G.a,Z.a,J],imports:[[W.b]]}),t})(),X=(()=>{class t{}return t.\u0275mod=r.Hb({type:t}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)},imports:[[K,N,L.c,M.e]]}),t})();function Y(t,e){if(1&t&&(r.Mb(0,"span"),r.hc(1),r.Xb(2,"currency"),r.Lb()),2&t){const t=r.Wb();r.zb(1),r.kc(" ",t.cart.itemCount," item(s) ",r.Yb(2,2,t.cart.cartPrice,"USD","symbol","2.2-2")," ")}}function tt(t,e){1&t&&(r.Mb(0,"span"),r.hc(1," (empty) "),r.Lb())}let et=(()=>{class t{constructor(t){this.cart=t}}return t.\u0275fac=function(e){return new(e||t)(r.Jb($))},t.\u0275cmp=r.Db({type:t,selectors:[["cart-summary"]],decls:7,vars:3,consts:[[1,"float-right"],[4,"ngIf"],["routerLink","/cart",1,"btn","btn-sm","bg-dark","text-white",3,"disabled"],[1,"fa","fa-shopping-cart"]],template:function(t,e){1&t&&(r.Mb(0,"div",0),r.Mb(1,"small"),r.hc(2," Your cart: "),r.gc(3,Y,3,7,"span",1),r.gc(4,tt,2,0,"span",1),r.Lb(),r.Mb(5,"button",2),r.Kb(6,"i",3),r.Lb(),r.Lb()),2&t&&(r.zb(3),r.Zb("ngIf",e.cart.itemCount>0),r.zb(1),r.Zb("ngIf",0==e.cart.itemCount),r.zb(1),r.Zb("disabled",0==e.cart.itemCount))},directives:[s.j,M.c],pipes:[s.c],encapsulation:2}),t})(),nt=(()=>{class t{constructor(t,e){this.container=t,this.template=e}ngOnChanges(t){this.container.clear();for(let e=0;e{class t{constructor(t,e,n){this.repository=t,this.cart=e,this.router=n,this.selectedCategory=null,this.productsPerPage=4,this.selectedPage=1}get products(){let t=(this.selectedPage-1)*this.productsPerPage;return this.repository.getProducts(this.selectedCategory).slice(t,t+this.productsPerPage)}get categories(){return this.repository.getCategories()}changeCategory(t){this.selectedCategory=t}changePage(t){this.selectedPage=t}changePageSize(t){this.productsPerPage=Number(t),this.changePage(1)}get pageCount(){return Math.ceil(this.repository.getProducts(this.selectedCategory).length/this.productsPerPage)}addProductToCart(t){this.cart.addLine(t),this.router.navigateByUrl("/cart")}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(V.a),r.Jb($),r.Jb(M.b))},t.\u0275cmp=r.Db({type:t,selectors:[["store"]],decls:27,vars:4,consts:[[1,"container-fluid"],[1,"row"],[1,"col","bg-dark","text-white"],[1,"navbar-brand"],[1,"col-3","p-2"],[1,"btn","btn-block","btn-outline-primary",3,"click"],["class","btn btn-outline-primary btn-block",3,"active","click",4,"ngFor","ngForOf"],["routerLink","/admin",1,"btn","btn-block","btn-danger","mt-5"],[1,"col-9","p-2"],["class","card m-1 p-1 bg-light",4,"ngFor","ngForOf"],[1,"form-inline","float-left","mr-1"],[1,"form-control",3,"value","change"],["value","3"],["value","4"],["value","6"],["value","8"],[1,"btn-group","float-right"],["class","btn btn-outline-primary",3,"active","click",4,"counter","counterOf"],[1,"btn","btn-outline-primary","btn-block",3,"click"],[1,"card","m-1","p-1","bg-light"],[1,"badge","badge-pill","badge-primary","float-right"],[1,"card-text","bg-white","p-1"],[1,"btn","btn-success","btn-sm","float-right",3,"click"],[1,"btn","btn-outline-primary",3,"click"]],template:function(t,e){1&t&&(r.Mb(0,"div",0),r.Mb(1,"div",1),r.Mb(2,"div",2),r.Mb(3,"a",3),r.hc(4,"SPORTS STORE"),r.Lb(),r.Kb(5,"cart-summary"),r.Lb(),r.Lb(),r.Mb(6,"div",1),r.Mb(7,"div",4),r.Mb(8,"button",5),r.Ub("click",(function(t){return e.changeCategory()})),r.hc(9," Home "),r.Lb(),r.gc(10,st,2,3,"button",6),r.Mb(11,"button",7),r.hc(12," Admin "),r.Lb(),r.Lb(),r.Mb(13,"div",8),r.gc(14,it,10,8,"div",9),r.Mb(15,"div",10),r.Mb(16,"select",11),r.Ub("change",(function(t){return e.changePageSize(t.target.value)})),r.Mb(17,"option",12),r.hc(18,"3 per Page"),r.Lb(),r.Mb(19,"option",13),r.hc(20,"4 per Page"),r.Lb(),r.Mb(21,"option",14),r.hc(22,"6 per Page"),r.Lb(),r.Mb(23,"option",15),r.hc(24,"8 per Page"),r.Lb(),r.Lb(),r.Lb(),r.Mb(25,"div",16),r.gc(26,ot,2,3,"button",17),r.Lb(),r.Lb(),r.Lb(),r.Lb()),2&t&&(r.zb(10),r.Zb("ngForOf",e.categories),r.zb(4),r.Zb("ngForOf",e.products),r.zb(2),r.Zb("value",e.productsPerPage),r.zb(10),r.Zb("counterOf",e.pageCount))},directives:[et,s.i,M.c,L.h,L.j,nt],pipes:[s.c],encapsulation:2}),t})();function ct(t,e){1&t&&(r.Mb(0,"div",6),r.Mb(1,"h2"),r.hc(2,"Thanks!"),r.Lb(),r.Mb(3,"p"),r.hc(4,"Thanks for placing your order."),r.Lb(),r.Mb(5,"p"),r.hc(6,"We'll ship your goods as soon as possible."),r.Lb(),r.Mb(7,"button",7),r.hc(8,"Return to Store"),r.Lb(),r.Lb())}function ut(t,e){1&t&&(r.Mb(0,"span",27),r.hc(1," Please enter your name "),r.Lb())}function lt(t,e){1&t&&(r.Mb(0,"span",27),r.hc(1," Please enter your address "),r.Lb())}function ht(t,e){1&t&&(r.Mb(0,"span",27),r.hc(1," Please enter your city "),r.Lb())}function dt(t,e){1&t&&(r.Mb(0,"span",27),r.hc(1," Please enter your state "),r.Lb())}function pt(t,e){1&t&&(r.Mb(0,"span",27),r.hc(1," Please enter your zip/postal code "),r.Lb())}function ft(t,e){1&t&&(r.Mb(0,"span",27),r.hc(1," Please enter your country "),r.Lb())}function gt(t,e){if(1&t){const t=r.Nb();r.Mb(0,"form",8,9),r.Ub("ngSubmit",(function(e){r.dc(t);const n=r.cc(1);return r.Wb().submitOrder(n)})),r.Mb(2,"div",10),r.Mb(3,"label"),r.hc(4,"Name"),r.Lb(),r.Mb(5,"input",11,12),r.Ub("ngModelChange",(function(e){return r.dc(t),r.Wb().order.name=e})),r.Lb(),r.gc(7,ut,2,0,"span",13),r.Lb(),r.Mb(8,"div",10),r.Mb(9,"label"),r.hc(10,"Address"),r.Lb(),r.Mb(11,"input",14,15),r.Ub("ngModelChange",(function(e){return r.dc(t),r.Wb().order.address=e})),r.Lb(),r.gc(13,lt,2,0,"span",13),r.Lb(),r.Mb(14,"div",10),r.Mb(15,"label"),r.hc(16,"City"),r.Lb(),r.Mb(17,"input",16,17),r.Ub("ngModelChange",(function(e){return r.dc(t),r.Wb().order.city=e})),r.Lb(),r.gc(19,ht,2,0,"span",13),r.Lb(),r.Mb(20,"div",10),r.Mb(21,"label"),r.hc(22,"State"),r.Lb(),r.Mb(23,"input",18,19),r.Ub("ngModelChange",(function(e){return r.dc(t),r.Wb().order.state=e})),r.Lb(),r.gc(25,dt,2,0,"span",13),r.Lb(),r.Mb(26,"div",10),r.Mb(27,"label"),r.hc(28,"Zip/Postal Code"),r.Lb(),r.Mb(29,"input",20,21),r.Ub("ngModelChange",(function(e){return r.dc(t),r.Wb().order.zip=e})),r.Lb(),r.gc(31,pt,2,0,"span",13),r.Lb(),r.Mb(32,"div",10),r.Mb(33,"label"),r.hc(34,"Country"),r.Lb(),r.Mb(35,"input",22,23),r.Ub("ngModelChange",(function(e){return r.dc(t),r.Wb().order.country=e})),r.Lb(),r.gc(37,ft,2,0,"span",13),r.Lb(),r.Mb(38,"div",24),r.Mb(39,"button",25),r.hc(40,"Back"),r.Lb(),r.Mb(41,"button",26),r.hc(42,"Complete Order"),r.Lb(),r.Lb(),r.Lb()}if(2&t){const t=r.cc(6),e=r.cc(12),n=r.cc(18),s=r.cc(24),i=r.cc(30),o=r.cc(36),a=r.Wb();r.zb(5),r.Zb("ngModel",a.order.name),r.zb(2),r.Zb("ngIf",a.submitted&&t.invalid),r.zb(4),r.Zb("ngModel",a.order.address),r.zb(2),r.Zb("ngIf",a.submitted&&e.invalid),r.zb(4),r.Zb("ngModel",a.order.city),r.zb(2),r.Zb("ngIf",a.submitted&&n.invalid),r.zb(4),r.Zb("ngModel",a.order.state),r.zb(2),r.Zb("ngIf",a.submitted&&s.invalid),r.zb(4),r.Zb("ngModel",a.order.zip),r.zb(2),r.Zb("ngIf",a.submitted&&i.invalid),r.zb(4),r.Zb("ngModel",a.order.country),r.zb(2),r.Zb("ngIf",a.submitted&&o.invalid)}}let mt=(()=>{class t{constructor(t,e){this.repository=t,this.order=e,this.orderSent=!1,this.submitted=!1}submitOrder(t){this.submitted=!0,t.valid&&this.repository.saveOrder(this.order).subscribe(t=>{this.order.clear(),this.orderSent=!0,this.submitted=!1})}}return t.\u0275fac=function(e){return new(e||t)(r.Jb(B.a),r.Jb(q))},t.\u0275cmp=r.Db({type:t,selectors:[["ng-component"]],decls:7,vars:2,consts:[[1,"container-fluid"],[1,"row"],[1,"col","bg-dark","text-white"],[1,"navbar-brand"],["class","m-2 text-center",4,"ngIf"],["novalidate","","class","m-2",3,"ngSubmit",4,"ngIf"],[1,"m-2","text-center"],["routerLink","/store",1,"btn","btn-primary"],["novalidate","",1,"m-2",3,"ngSubmit"],["form","ngForm"],[1,"form-group"],["name","name","required","",1,"form-control",3,"ngModel","ngModelChange"],["name","ngModel"],["class","text-danger",4,"ngIf"],["name","address","required","",1,"form-control",3,"ngModel","ngModelChange"],["address","ngModel"],["name","city","required","",1,"form-control",3,"ngModel","ngModelChange"],["city","ngModel"],["name","state","required","",1,"form-control",3,"ngModel","ngModelChange"],["state","ngModel"],["name","zip","required","",1,"form-control",3,"ngModel","ngModelChange"],["zip","ngModel"],["name","country","required","",1,"form-control",3,"ngModel","ngModelChange"],["country","ngModel"],[1,"text-center"],["routerLink","/cart",1,"btn","btn-secondary","m-1"],["type","submit",1,"btn","btn-primary","m-1"],[1,"text-danger"]],template:function(t,e){1&t&&(r.Mb(0,"div",0),r.Mb(1,"div",1),r.Mb(2,"div",2),r.Mb(3,"a",3),r.hc(4,"SPORTS STORE"),r.Lb(),r.Lb(),r.Lb(),r.Lb(),r.gc(5,ct,9,0,"div",4),r.gc(6,gt,43,12,"form",5)),2&t&&(r.zb(5),r.Zb("ngIf",e.orderSent),r.zb(1),r.Zb("ngIf",!e.orderSent))},directives:[s.j,M.c,L.k,L.e,L.f,L.b,L.i,L.d,L.g],styles:["input.ng-dirty.ng-invalid[_ngcontent-%COMP%]{border:2px solid red}input.ng-dirty.ng-valid[_ngcontent-%COMP%]{border:2px solid #6bc502}"]}),t})();function bt(t,e){1&t&&(r.Mb(0,"tr"),r.Mb(1,"td",14),r.hc(2," Your cart is empty "),r.Lb(),r.Lb())}function yt(t,e){if(1&t){const t=r.Nb();r.Mb(0,"tr"),r.Mb(1,"td"),r.Mb(2,"input",15),r.Ub("change",(function(n){r.dc(t);const s=e.$implicit;return r.Wb().cart.updateQuantity(s.product,n.target.value)})),r.Lb(),r.Lb(),r.Mb(3,"td"),r.hc(4),r.Lb(),r.Mb(5,"td",7),r.hc(6),r.Xb(7,"currency"),r.Lb(),r.Mb(8,"td",7),r.hc(9),r.Xb(10,"currency"),r.Lb(),r.Mb(11,"td",5),r.Mb(12,"button",16),r.Ub("click",(function(n){r.dc(t);const s=e.$implicit;return r.Wb().cart.removeLine(s.product.id)})),r.hc(13," Remove "),r.Lb(),r.Lb(),r.Lb()}if(2&t){const t=e.$implicit;r.zb(2),r.Zb("value",t.quantity),r.zb(2),r.ic(t.product.name),r.zb(2),r.jc(" ",r.Yb(7,4,t.product.price,"USD","symbol","2.2-2")," "),r.zb(3),r.jc(" ",r.Yb(10,9,t.lineTotal,"USD","symbol","2.2-2")," ")}}let vt=(()=>{class t{constructor(t,e){this.cart=t,this.connection=e,this.connected=!0,this.connected=this.connection.connected,e.Changes.subscribe(t=>this.connected=t)}}return t.\u0275fac=function(e){return new(e||t)(r.Jb($),r.Jb(J))},t.\u0275cmp=r.Db({type:t,selectors:[["ng-component"]],decls:37,vars:10,consts:[[1,"container-fluid"],[1,"row"],[1,"col","bg-dark","text-white"],[1,"navbar-brand"],[1,"col","mt-2"],[1,"text-center"],[1,"table","table-bordered","table-striped","p-2"],[1,"text-right"],[4,"ngIf"],[4,"ngFor","ngForOf"],["colspan","3",1,"text-right"],[1,"col"],["routerLink","/store",1,"btn","btn-primary","m-1"],["routerLink","/checkout",1,"btn","btn-secondary","m-1",3,"disabled"],["colspan","4",1,"text-center"],["type","number",1,"form-control-sm",2,"width","5em",3,"value","change"],[1,"btn","btn-sm","btn-danger",3,"click"]],template:function(t,e){1&t&&(r.Mb(0,"div",0),r.Mb(1,"div",1),r.Mb(2,"div",2),r.Mb(3,"a",3),r.hc(4,"SPORTS STORE"),r.Lb(),r.Lb(),r.Lb(),r.Mb(5,"div",1),r.Mb(6,"div",4),r.Mb(7,"h2",5),r.hc(8,"Your Cart"),r.Lb(),r.Mb(9,"table",6),r.Mb(10,"thead"),r.Mb(11,"tr"),r.Mb(12,"th"),r.hc(13,"Quantity"),r.Lb(),r.Mb(14,"th"),r.hc(15,"Product"),r.Lb(),r.Mb(16,"th",7),r.hc(17,"Price"),r.Lb(),r.Mb(18,"th",7),r.hc(19,"Subtotal"),r.Lb(),r.Lb(),r.Lb(),r.Mb(20,"tbody"),r.gc(21,bt,3,0,"tr",8),r.gc(22,yt,14,14,"tr",9),r.Lb(),r.Mb(23,"tfoot"),r.Mb(24,"tr"),r.Mb(25,"td",10),r.hc(26,"Total:"),r.Lb(),r.Mb(27,"td",7),r.hc(28),r.Xb(29,"currency"),r.Lb(),r.Lb(),r.Lb(),r.Lb(),r.Lb(),r.Lb(),r.Mb(30,"div",1),r.Mb(31,"div",11),r.Mb(32,"div",5),r.Mb(33,"button",12),r.hc(34," Continue Shopping "),r.Lb(),r.Mb(35,"button",13),r.hc(36),r.Lb(),r.Lb(),r.Lb(),r.Lb(),r.Lb()),2&t&&(r.zb(21),r.Zb("ngIf",0==e.cart.lines.length),r.zb(1),r.Zb("ngForOf",e.cart.lines),r.zb(6),r.jc(" ",r.Yb(29,5,e.cart.cartPrice,"USD","symbol","2.2-2")," "),r.zb(7),r.Zb("disabled",0==e.cart.lines.length||!e.connected),r.zb(1),r.jc(" ",e.connected?"Checkout":"Offline"," "))},directives:[s.j,s.i,M.c],pipes:[s.c],encapsulation:2}),t})(),_t=(()=>{class t{constructor(t){this.router=t,this.firstNavigation=!0}canActivate(t,e){return!this.firstNavigation||(this.firstNavigation=!1,t.component==at)||(this.router.navigateByUrl("/"),!1)}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(M.b))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();var wt=n("NXyV"),Ct=n("HDdC");function St(t,e){return new Ct.a(e?n=>e.schedule(Ot,0,{error:t,subscriber:n}):e=>e.error(t))}function Ot({error:t,subscriber:e}){e.error(t)}var Et=n("DH7j"),xt=n("n6bG"),Tt=n("lJxs");function kt(t,e,n,r){return Object(xt.a)(n)&&(r=n,n=void 0),r?kt(t,e,n).pipe(Object(Tt.a)(t=>Object(Et.a)(t)?r(...t):r(t))):new Ct.a(r=>{!function t(e,n,r,s,i){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,r,i),o=()=>t.removeEventListener(n,r,i)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,r),o=()=>t.off(n,r)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,r),o=()=>t.removeListener(n,r)}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,a=e.length;o1?Array.prototype.slice.call(arguments):t)}),r,n)})}var At=n("LRne"),jt=n("GyhO"),Pt=n("KqfI");const It=new Ct.a(Pt.a);var Rt=n("VRyK"),Nt=n("pLZG"),Mt=n("eIep"),Dt=n("oB13"),Lt=n("IzEk"),Vt=n("vkgz"),Ut=n("quSY");class Ft extends Ut.a{constructor(t,e){super()}schedule(t,e=0){return this}}class Ht extends Ft{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(r,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,r=void 0;try{this.work(t)}catch(s){n=!0,r=!!s&&s||new Error(s)}if(n)return this.unsubscribe(),r}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}let $t=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=()=>Date.now(),t})();class zt extends $t{constructor(t,e=$t.now){super(t,()=>zt.delegate&&zt.delegate!==this?zt.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return zt.delegate&&zt.delegate!==this?zt.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let n;this.active=!0;do{if(n=t.execute(t.state,t.delay))break}while(t=e.shift());if(this.active=!1,n){for(;t=e.shift();)t.unsubscribe();throw n}}}const qt=new zt(Ht);var Bt=n("7o/Q"),Gt=n("EY2u");let Wt=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}}do(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Object(At.a)(this.value);case"E":return St(this.error);case"C":return Object(Gt.b)()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Zt{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new Qt(t,this.delay,this.scheduler))}}class Qt extends Bt.a{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,r=t.scheduler,s=t.destination;for(;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(s);if(n.length>0){const e=Math.max(0,n[0].time-r.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(Qt.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new Jt(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Wt.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Wt.createComplete()),this.unsubscribe()}}class Jt{constructor(t,e){this.time=t,this.notification=e}}const Kt="Service workers are disabled or not supported by this browser";class Xt{constructor(t){if(this.serviceWorker=t,t){const e=kt(t,"controllerchange").pipe(Object(Tt.a)(()=>t.controller)),n=Object(wt.a)(()=>Object(At.a)(t.controller)),r=Object(jt.a)(n,e);this.worker=r.pipe(Object(Nt.a)(t=>!!t)),this.registration=this.worker.pipe(Object(Mt.a)(()=>t.getRegistration()));const s=kt(t,"message").pipe(Object(Tt.a)(t=>t.data)).pipe(Object(Nt.a)(t=>t&&t.type)).pipe(Object(Dt.a)(new Q.a));s.connect(),this.events=s}else this.worker=this.events=this.registration=Object(wt.a)(()=>St(new Error("Service workers are disabled or not supported by this browser")))}postMessage(t,e){return this.worker.pipe(Object(Lt.a)(1),Object(Vt.a)(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>{})}postMessageWithStatus(t,e,n){const r=this.waitForStatus(n),s=this.postMessage(t,e);return Promise.all([r,s]).then(()=>{})}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(Object(Nt.a)(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(Object(Lt.a)(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(Object(Nt.a)(e=>e.nonce===t),Object(Lt.a)(1),Object(Tt.a)(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}let Yt=(()=>{class t{constructor(t){if(this.sw=t,this.subscriptionChanges=new Q.a,!t.isEnabled)return this.messages=It,this.notificationClicks=It,void(this.subscription=It);this.messages=this.sw.eventsOfType("PUSH").pipe(Object(Tt.a)(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(Object(Tt.a)(t=>t.data)),this.pushManager=this.sw.registration.pipe(Object(Tt.a)(t=>t.pushManager));const e=this.pushManager.pipe(Object(Mt.a)(t=>t.getSubscription()));this.subscription=Object(Rt.a)(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(Kt));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),r=new Uint8Array(new ArrayBuffer(n.length));for(let s=0;st.subscribe(e)),Object(Lt.a)(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(Object(Lt.a)(1),Object(Mt.a)(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(Kt))}decodeBase64(t){return atob(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(Xt))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})(),te=(()=>{class t{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=It,void(this.activated=It);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(Kt));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(Kt));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}return t.\u0275fac=function(e){return new(e||t)(r.Qb(Xt))},t.\u0275prov=r.Fb({token:t,factory:t.\u0275fac}),t})();class ee{}const ne=new r.q("NGSW_REGISTER_SCRIPT");function re(t,e,n,i){return()=>{if(!(Object(s.n)(i)&&"serviceWorker"in navigator&&!1!==n.enabled))return;let o;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)o=n.registrationStrategy();else{const[e,...s]=(n.registrationStrategy||"registerWhenStable").split(":");switch(e){case"registerImmediately":o=Object(At.a)(null);break;case"registerWithDelay":o=Object(At.a)(null).pipe(function(t,e=qt){var n;const r=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new Zt(r,e))}(+s[0]||0));break;case"registerWhenStable":o=t.get(r.g).isStable.pipe(Object(Nt.a)(t=>t));break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}o.pipe(Object(Lt.a)(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}).catch(t=>console.error("Service worker registration failed with:",t)))}}function se(t,e){return new Xt(Object(s.n)(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}let ie=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:ne,useValue:e},{provide:ee,useValue:n},{provide:Xt,useFactory:se,deps:[ee,r.B]},{provide:r.d,useFactory:re,deps:[r.r,ne,ee,r.B],multi:!0}]}}}return t.\u0275mod=r.Hb({type:t}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)},providers:[Yt,te]}),t})(),oe=(()=>{class t{}return t.\u0275mod=r.Hb({type:t,bootstrap:[D]}),t.\u0275inj=r.Gb({factory:function(e){return new(e||t)},providers:[_t],imports:[[N,X,M.e.forRoot([{path:"store",component:at,canActivate:[_t]},{path:"cart",component:vt,canActivate:[_t]},{path:"checkout",component:mt,canActivate:[_t]},{path:"admin",loadChildren:()=>n.e(5).then(n.bind(null,"jkDv")).then(t=>t.AdminModule),canActivate:[_t]},{path:"**",redirectTo:"/store"}]),ie.register("ngsw-worker.js",{enabled:!0})]]}),t})();Object(r.R)(),I().bootstrapModule(oe).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then((function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}))}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/main-es5.17a65f3ef96068aef242.js ================================================ function _toArray(e){return _arrayWithHoles(e)||_iterableToArray(e)||_nonIterableRest()}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,s=e[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(u){i=!0,o=u}finally{try{r||null==s.return||s.return()}finally{if(i)throw o}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function _construct(e,t,n){return(_construct=isNativeReflectConstruct()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var i=new(Function.bind.apply(e,r));return n&&_setPrototypeOf(i,n.prototype),i}).apply(null,arguments)}function _get(e,t,n){return(_get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=_superPropBase(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function _superPropBase(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=_getPrototypeOf(e)););return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);te?{max:{max:e,actual:t.value}}:null}}},{key:"required",value:function(e){return j(e.value)?{required:!0}:null}},{key:"requiredTrue",value:function(e){return!0===e.value?null:{required:!0}}},{key:"email",value:function(e){return j(e.value)?null:N.test(e.value)?null:{email:!0}}},{key:"minLength",value:function(e){return function(t){if(j(t.value))return null;var n=t.value?t.value.length:0;return ne?{maxlength:{requiredLength:e,actualLength:n}}:null}}},{key:"pattern",value:function(t){return t?("string"==typeof t?(r="","^"!==t.charAt(0)&&(r+="^"),r+=t,"$"!==t.charAt(t.length-1)&&(r+="$"),n=new RegExp(r)):(r=t.toString(),n=t),function(e){if(j(e.value))return null;var t=e.value;return n.test(t)?null:{pattern:{requiredPattern:r,actualValue:t}}}):e.nullValidator;var n,r}},{key:"nullValidator",value:function(e){return null}},{key:"compose",value:function(e){if(!e)return null;var t=e.filter(D);return 0==t.length?null:function(e){return V(function(e,t){return t.map((function(t){return t(e)}))}(e,t))}}},{key:"composeAsync",value:function(e){if(!e)return null;var t=e.filter(D);return 0==t.length?null:function(e){return function(){for(var e=arguments.length,t=new Array(e),n=0;n=0;--t)if(this._accessors[t][1]===e)return void this._accessors.splice(t,1)}},{key:"select",value:function(e){var t=this;this._accessors.forEach((function(n){t._isSameGroup(n,e)&&n[1]!==e&&n[1].fireUncheck(e.value)}))}},{key:"_isSameGroup",value:function(e,t){return!!e[0].control&&e[0]._parent===t._control._parent&&e[1].name===t.name}}]),e}()).\u0275fac=function(e){return new(e||q)},q.\u0275prov=r.Fb({token:q,factory:q.\u0275fac}),q),J=((z=function(){function e(t,n,r,i){_classCallCheck(this,e),this._renderer=t,this._elementRef=n,this._registry=r,this._injector=i,this.onChange=function(){},this.onTouched=function(){}}return _createClass(e,[{key:"ngOnInit",value:function(){this._control=this._injector.get(x),this._checkName(),this._registry.add(this._control,this)}},{key:"ngOnDestroy",value:function(){this._registry.remove(this)}},{key:"writeValue",value:function(e){this._state=e===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}},{key:"registerOnChange",value:function(e){var t=this;this._fn=e,this.onChange=function(){e(t.value),t._registry.select(t)}}},{key:"fireUncheck",value:function(e){this.writeValue(e)}},{key:"registerOnTouched",value:function(e){this.onTouched=e}},{key:"setDisabledState",value:function(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}},{key:"_checkName",value:function(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}},{key:"_throwNameError",value:function(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}]),e}()).\u0275fac=function(e){return new(e||z)(r.Jb(r.D),r.Jb(r.l),r.Jb(Q),r.Jb(r.r))},z.\u0275dir=r.Eb({type:z,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(e,t){1&e&&r.Ub("change",(function(e){return t.onChange()}))("blur",(function(e){return t.onTouched()}))},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[r.yb([Z])]}),z),K={provide:p,useExisting:Object(r.S)((function(){return X})),multi:!0},X=((B=function(){function e(t,n){_classCallCheck(this,e),this._renderer=t,this._elementRef=n,this.onChange=function(e){},this.onTouched=function(){}}return _createClass(e,[{key:"writeValue",value:function(e){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(e))}},{key:"registerOnChange",value:function(e){this.onChange=function(t){e(""==t?null:parseFloat(t))}}},{key:"registerOnTouched",value:function(e){this.onTouched=e}},{key:"setDisabledState",value:function(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}}]),e}()).\u0275fac=function(e){return new(e||B)(r.Jb(r.D),r.Jb(r.l))},B.\u0275dir=r.Eb({type:B,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(e,t){1&e&&r.Ub("change",(function(e){return t.onChange(e.target.value)}))("input",(function(e){return t.onChange(e.target.value)}))("blur",(function(e){return t.onTouched()}))},features:[r.yb([K])]}),B),$='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Y='\n
\n
\n \n
\n
',ee={provide:p,useExisting:Object(r.S)((function(){return ie})),multi:!0};function te(e,t){return null==e?"".concat(t):(t&&"object"==typeof t&&(t="Object"),"".concat(e,": ").concat(t).slice(0,50))}var ne,re,ie=((re=function(){function e(t,n){_classCallCheck(this,e),this._renderer=t,this._elementRef=n,this._optionMap=new Map,this._idCounter=0,this.onChange=function(e){},this.onTouched=function(){},this._compareWith=r.rb}return _createClass(e,[{key:"writeValue",value:function(e){this.value=e;var t=this._getOptionId(e);null==t&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);var n=te(t,e);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}},{key:"registerOnChange",value:function(e){var t=this;this.onChange=function(n){t.value=t._getOptionValue(n),e(t.value)}}},{key:"registerOnTouched",value:function(e){this.onTouched=e}},{key:"setDisabledState",value:function(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}},{key:"_registerOption",value:function(){return(this._idCounter++).toString()}},{key:"_getOptionId",value:function(e){for(var t=0,n=Array.from(this._optionMap.keys());t-1)}}else t=function(e,t){e._setSelected(!1)};this._optionMap.forEach(t)}},{key:"registerOnChange",value:function(e){var t=this;this.onChange=function(n){var r=[];if(n.hasOwnProperty("selectedOptions"))for(var i=n.selectedOptions,o=0;o1?"path: '".concat(e.path.join(" -> "),"'"):e.path[0]?"name: '".concat(e.path,"'"):"unspecified name attribute",new Error("".concat(t," ").concat(n))}function ye(e){return null!=e?M.compose(e.map(U)):null}function ge(e){return null!=e?M.composeAsync(e.map(F)):null}var me=[g,X,W,ie,le,J];function be(e){var t=Ce(e)?e.validators:e;return Array.isArray(t)?ye(t):t||null}function _e(e,t){var n=Ce(t)?t.asyncValidators:e;return Array.isArray(n)?ge(n):n||null}function Ce(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}var ke,we,Oe,Se,Ee,xe,Te,Pe,Ae=function(){function e(t,n){_classCallCheck(this,e),this.validator=t,this.asyncValidator=n,this._onCollectionChange=function(){},this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}return _createClass(e,[{key:"setValidators",value:function(e){this.validator=be(e)}},{key:"setAsyncValidators",value:function(e){this.asyncValidator=_e(e)}},{key:"clearValidators",value:function(){this.validator=null}},{key:"clearAsyncValidators",value:function(){this.asyncValidator=null}},{key:"markAsTouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!0,this._parent&&!e.onlySelf&&this._parent.markAsTouched(e)}},{key:"markAllAsTouched",value:function(){this.markAsTouched({onlySelf:!0}),this._forEachChild((function(e){return e.markAllAsTouched()}))}},{key:"markAsUntouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!1,this._pendingTouched=!1,this._forEachChild((function(e){e.markAsUntouched({onlySelf:!0})})),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}},{key:"markAsDirty",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!1,this._parent&&!e.onlySelf&&this._parent.markAsDirty(e)}},{key:"markAsPristine",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!0,this._pendingDirty=!1,this._forEachChild((function(e){e.markAsPristine({onlySelf:!0})})),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}},{key:"markAsPending",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.status="PENDING",!1!==e.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!e.onlySelf&&this._parent.markAsPending(e)}},{key:"disable",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._parentMarkedDirty(e.onlySelf);this.status="DISABLED",this.errors=null,this._forEachChild((function(t){t.disable(Object.assign(Object.assign({},e),{onlySelf:!0}))})),this._updateValue(),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},e),{skipPristineCheck:t})),this._onDisabledChange.forEach((function(e){return e(!0)}))}},{key:"enable",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._parentMarkedDirty(e.onlySelf);this.status="VALID",this._forEachChild((function(t){t.enable(Object.assign(Object.assign({},e),{onlySelf:!0}))})),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},e),{skipPristineCheck:t})),this._onDisabledChange.forEach((function(e){return e(!1)}))}},{key:"_updateAncestors",value:function(e){this._parent&&!e.onlySelf&&(this._parent.updateValueAndValidity(e),e.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}},{key:"setParent",value:function(e){this._parent=e}},{key:"updateValueAndValidity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),"VALID"!==this.status&&"PENDING"!==this.status||this._runAsyncValidator(e.emitEvent)),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.updateValueAndValidity(e)}},{key:"_updateTreeValidity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{emitEvent:!0};this._forEachChild((function(t){return t._updateTreeValidity(e)})),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent})}},{key:"_setInitialStatus",value:function(){this.status=this._allControlsDisabled()?"DISABLED":"VALID"}},{key:"_runValidator",value:function(){return this.validator?this.validator(this):null}},{key:"_runAsyncValidator",value:function(e){var t=this;if(this.asyncValidator){this.status="PENDING";var n=L(this.asyncValidator(this));this._asyncValidationSubscription=n.subscribe((function(n){return t.setErrors(n,{emitEvent:e})}))}}},{key:"_cancelExistingSubscription",value:function(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}},{key:"setErrors",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.errors=e,this._updateControlsErrors(!1!==t.emitEvent)}},{key:"get",value:function(e){return function(e,t,n){if(null==t)return null;if(Array.isArray(t)||(t=t.split(".")),Array.isArray(t)&&0===t.length)return null;var r=e;return t.forEach((function(e){r=r instanceof Re?r.controls.hasOwnProperty(e)?r.controls[e]:null:r instanceof Ie&&r.at(e)||null})),r}(this,e)}},{key:"getError",value:function(e,t){var n=t?this.get(t):this;return n&&n.errors?n.errors[e]:null}},{key:"hasError",value:function(e,t){return!!this.getError(e,t)}},{key:"_updateControlsErrors",value:function(e){this.status=this._calculateStatus(),e&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(e)}},{key:"_initObservables",value:function(){this.valueChanges=new r.n,this.statusChanges=new r.n}},{key:"_calculateStatus",value:function(){return this._allControlsDisabled()?"DISABLED":this.errors?"INVALID":this._anyControlsHaveStatus("PENDING")?"PENDING":this._anyControlsHaveStatus("INVALID")?"INVALID":"VALID"}},{key:"_anyControlsHaveStatus",value:function(e){return this._anyControls((function(t){return t.status===e}))}},{key:"_anyControlsDirty",value:function(){return this._anyControls((function(e){return e.dirty}))}},{key:"_anyControlsTouched",value:function(){return this._anyControls((function(e){return e.touched}))}},{key:"_updatePristine",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!this._anyControlsDirty(),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}},{key:"_updateTouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=this._anyControlsTouched(),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}},{key:"_isBoxedValue",value:function(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}},{key:"_registerOnCollectionChange",value:function(e){this._onCollectionChange=e}},{key:"_setUpdateStrategy",value:function(e){Ce(e)&&null!=e.updateOn&&(this._updateOn=e.updateOn)}},{key:"_parentMarkedDirty",value:function(e){return!e&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}},{key:"parent",get:function(){return this._parent}},{key:"valid",get:function(){return"VALID"===this.status}},{key:"invalid",get:function(){return"INVALID"===this.status}},{key:"pending",get:function(){return"PENDING"==this.status}},{key:"disabled",get:function(){return"DISABLED"===this.status}},{key:"enabled",get:function(){return"DISABLED"!==this.status}},{key:"dirty",get:function(){return!this.pristine}},{key:"untouched",get:function(){return!this.touched}},{key:"updateOn",get:function(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}},{key:"root",get:function(){for(var e=this;e._parent;)e=e._parent;return e}}]),e}(),je=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,r=arguments.length>1?arguments[1]:void 0,i=arguments.length>2?arguments[2]:void 0;return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,be(r),_e(i,r))))._onChange=[],e._applyFormState(n),e._setUpdateStrategy(r),e.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),e._initObservables(),e}return _inherits(t,e),_createClass(t,[{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.value=this._pendingValue=e,this._onChange.length&&!1!==n.emitModelToViewChange&&this._onChange.forEach((function(e){return e(t.value,!1!==n.emitViewToModelChange)})),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.setValue(e,t)}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._applyFormState(e),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}},{key:"_updateValue",value:function(){}},{key:"_anyControls",value:function(e){return!1}},{key:"_allControlsDisabled",value:function(){return this.disabled}},{key:"registerOnChange",value:function(e){this._onChange.push(e)}},{key:"_clearChangeFns",value:function(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=function(){}}},{key:"registerOnDisabledChange",value:function(e){this._onDisabledChange.push(e)}},{key:"_forEachChild",value:function(e){}},{key:"_syncPendingControls",value:function(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}},{key:"_applyFormState",value:function(e){this._isBoxedValue(e)?(this.value=this._pendingValue=e.value,e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=e}}]),t}(Ae),Re=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,be(n),_e(r,n)))).controls=e,i._initObservables(),i._setUpdateStrategy(n),i._setUpControls(),i.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),i}return _inherits(t,e),_createClass(t,[{key:"registerControl",value:function(e,t){return this.controls[e]?this.controls[e]:(this.controls[e]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}},{key:"addControl",value:function(e,t){this.registerControl(e,t),this.updateValueAndValidity(),this._onCollectionChange()}},{key:"removeControl",value:function(e){this.controls[e]&&this.controls[e]._registerOnCollectionChange((function(){})),delete this.controls[e],this.updateValueAndValidity(),this._onCollectionChange()}},{key:"setControl",value:function(e,t){this.controls[e]&&this.controls[e]._registerOnCollectionChange((function(){})),delete this.controls[e],t&&this.registerControl(e,t),this.updateValueAndValidity(),this._onCollectionChange()}},{key:"contains",value:function(e){return this.controls.hasOwnProperty(e)&&this.controls[e].enabled}},{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._checkAllValuesPresent(e),Object.keys(e).forEach((function(r){t._throwIfControlMissing(r),t.controls[r].setValue(e[r],{onlySelf:!0,emitEvent:n.emitEvent})})),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Object.keys(e).forEach((function(r){t.controls[r]&&t.controls[r].patchValue(e[r],{onlySelf:!0,emitEvent:n.emitEvent})})),this.updateValueAndValidity(n)}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild((function(n,r){n.reset(e[r],{onlySelf:!0,emitEvent:t.emitEvent})})),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}},{key:"getRawValue",value:function(){return this._reduceChildren({},(function(e,t,n){return e[n]=t instanceof je?t.value:t.getRawValue(),e}))}},{key:"_syncPendingControls",value:function(){var e=this._reduceChildren(!1,(function(e,t){return!!t._syncPendingControls()||e}));return e&&this.updateValueAndValidity({onlySelf:!0}),e}},{key:"_throwIfControlMissing",value:function(e){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[e])throw new Error("Cannot find form control with name: ".concat(e,"."))}},{key:"_forEachChild",value:function(e){var t=this;Object.keys(this.controls).forEach((function(n){return e(t.controls[n],n)}))}},{key:"_setUpControls",value:function(){var e=this;this._forEachChild((function(t){t.setParent(e),t._registerOnCollectionChange(e._onCollectionChange)}))}},{key:"_updateValue",value:function(){this.value=this._reduceValue()}},{key:"_anyControls",value:function(e){var t=this,n=!1;return this._forEachChild((function(r,i){n=n||t.contains(i)&&e(r)})),n}},{key:"_reduceValue",value:function(){var e=this;return this._reduceChildren({},(function(t,n,r){return(n.enabled||e.disabled)&&(t[r]=n.value),t}))}},{key:"_reduceChildren",value:function(e,t){var n=e;return this._forEachChild((function(e,r){n=t(n,e,r)})),n}},{key:"_allControlsDisabled",value:function(){for(var e=0,t=Object.keys(this.controls);e0||this.disabled}},{key:"_checkAllValuesPresent",value:function(e){this._forEachChild((function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control with name: '".concat(n,"'."))}))}}]),t}(Ae),Ie=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,be(n),_e(r,n)))).controls=e,i._initObservables(),i._setUpdateStrategy(n),i._setUpControls(),i.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),i}return _inherits(t,e),_createClass(t,[{key:"at",value:function(e){return this.controls[e]}},{key:"push",value:function(e){this.controls.push(e),this._registerControl(e),this.updateValueAndValidity(),this._onCollectionChange()}},{key:"insert",value:function(e,t){this.controls.splice(e,0,t),this._registerControl(t),this.updateValueAndValidity()}},{key:"removeAt",value:function(e){this.controls[e]&&this.controls[e]._registerOnCollectionChange((function(){})),this.controls.splice(e,1),this.updateValueAndValidity()}},{key:"setControl",value:function(e,t){this.controls[e]&&this.controls[e]._registerOnCollectionChange((function(){})),this.controls.splice(e,1),t&&(this.controls.splice(e,0,t),this._registerControl(t)),this.updateValueAndValidity(),this._onCollectionChange()}},{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._checkAllValuesPresent(e),e.forEach((function(e,r){t._throwIfControlMissing(r),t.at(r).setValue(e,{onlySelf:!0,emitEvent:n.emitEvent})})),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.forEach((function(e,r){t.at(r)&&t.at(r).patchValue(e,{onlySelf:!0,emitEvent:n.emitEvent})})),this.updateValueAndValidity(n)}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild((function(n,r){n.reset(e[r],{onlySelf:!0,emitEvent:t.emitEvent})})),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}},{key:"getRawValue",value:function(){return this.controls.map((function(e){return e instanceof je?e.value:e.getRawValue()}))}},{key:"clear",value:function(){this.controls.length<1||(this._forEachChild((function(e){return e._registerOnCollectionChange((function(){}))})),this.controls.splice(0),this.updateValueAndValidity())}},{key:"_syncPendingControls",value:function(){var e=this.controls.reduce((function(e,t){return!!t._syncPendingControls()||e}),!1);return e&&this.updateValueAndValidity({onlySelf:!0}),e}},{key:"_throwIfControlMissing",value:function(e){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(e))throw new Error("Cannot find form control at index ".concat(e))}},{key:"_forEachChild",value:function(e){this.controls.forEach((function(t,n){e(t,n)}))}},{key:"_updateValue",value:function(){var e=this;this.value=this.controls.filter((function(t){return t.enabled||e.disabled})).map((function(e){return e.value}))}},{key:"_anyControls",value:function(e){return this.controls.some((function(t){return t.enabled&&e(t)}))}},{key:"_setUpControls",value:function(){var e=this;this._forEachChild((function(t){return e._registerControl(t)}))}},{key:"_checkAllValuesPresent",value:function(e){this._forEachChild((function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control at index: ".concat(n,"."))}))}},{key:"_allControlsDisabled",value:function(){var e=!0,t=!1,n=void 0;try{for(var r,i=this.controls[Symbol.iterator]();!(e=(r=i.next()).done);e=!0){if(r.value.enabled)return!1}}catch(o){t=!0,n=o}finally{try{e||null==i.return||i.return()}finally{if(t)throw n}}return this.controls.length>0||this.disabled}},{key:"_registerControl",value:function(e){e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)}},{key:"length",get:function(){return this.controls.length}}]),t}(Ae),Ne={provide:k,useExisting:Object(r.S)((function(){return De}))},Me=Promise.resolve(null),De=((we=function(e){function t(e,n){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).submitted=!1,i._directives=[],i.ngSubmit=new r.n,i.form=new Re({},ye(e),ge(n)),i}return _inherits(t,e),_createClass(t,[{key:"ngAfterViewInit",value:function(){this._setUpdateStrategy()}},{key:"addControl",value:function(e){var t=this;Me.then((function(){var n=t._findContainer(e.path);e.control=n.registerControl(e.name,e.control),de(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),t._directives.push(e)}))}},{key:"getControl",value:function(e){return this.form.get(e.path)}},{key:"removeControl",value:function(e){var t=this;Me.then((function(){var n,r,i,o=t._findContainer(e.path);o&&o.removeControl(e.name),n=t._directives,r=e,(i=n.indexOf(r))>-1&&n.splice(i,1)}))}},{key:"addFormGroup",value:function(e){var t=this;Me.then((function(){var n=t._findContainer(e.path),r=new Re({});(function(e,t){null==e&&pe(t,"Cannot find control with"),e.validator=M.compose([e.validator,t.validator]),e.asyncValidator=M.composeAsync([e.asyncValidator,t.asyncValidator])})(r,e),n.registerControl(e.name,r),r.updateValueAndValidity({emitEvent:!1})}))}},{key:"removeFormGroup",value:function(e){var t=this;Me.then((function(){var n=t._findContainer(e.path);n&&n.removeControl(e.name)}))}},{key:"getFormGroup",value:function(e){return this.form.get(e.path)}},{key:"updateModel",value:function(e,t){var n=this;Me.then((function(){n.form.get(e.path).setValue(t)}))}},{key:"setValue",value:function(e){this.control.setValue(e)}},{key:"onSubmit",value:function(e){return this.submitted=!0,t=this._directives,this.form._syncPendingControls(),t.forEach((function(e){var t=e.control;"submit"===t.updateOn&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)})),this.ngSubmit.emit(e),!1;var t}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(e){this.form.reset(e),this.submitted=!1}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}},{key:"_findContainer",value:function(e){return e.pop(),e.length?this.form.get(e):this.form}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"controls",get:function(){return this.form.controls}}]),t}(k)).\u0275fac=function(e){return new(e||we)(r.Jb(R,10),r.Jb(I,10))},we.\u0275dir=r.Eb({type:we,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(e,t){1&e&&r.Ub("submit",(function(e){return t.onSubmit(e)}))("reset",(function(e){return t.onReset()}))},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[r.yb([Ne]),r.wb]}),we),Le=((ke=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"ngOnInit",value:function(){this._checkParentType(),this.formDirective.addFormGroup(this)}},{key:"ngOnDestroy",value:function(){this.formDirective&&this.formDirective.removeFormGroup(this)}},{key:"_checkParentType",value:function(){}},{key:"control",get:function(){return this.formDirective.getFormGroup(this)}},{key:"path",get:function(){return fe(null==this.name?this.name:this.name.toString(),this._parent)}},{key:"formDirective",get:function(){return this._parent?this._parent.formDirective:null}},{key:"validator",get:function(){return ye(this._validators)}},{key:"asyncValidator",get:function(){return ge(this._asyncValidators)}}]),t}(k)).\u0275fac=function(e){return Ve(e||ke)},ke.\u0275dir=r.Eb({type:ke,features:[r.wb]}),ke),Ve=r.Ob(Le),Ue=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"modelParentException",value:function(){throw new Error('\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup\'s partner directive "formControlName" instead. Example:\n\n \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\n\n Or, if you\'d like to avoid registering this form control, indicate that it\'s standalone in ngModelOptions:\n\n Example:\n\n \n
\n \n \n
\n ')}},{key:"formGroupNameException",value: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 ".concat($,"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ").concat(Y))}},{key:"missingNameException",value:function(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: \n Example 2: ')}},{key:"modelGroupParentException",value: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 ".concat($,"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ").concat(Y))}}]),e}(),Fe={provide:k,useExisting:Object(r.S)((function(){return He}))},He=((Oe=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=e,i._validators=n,i._asyncValidators=r,i}return _inherits(t,e),_createClass(t,[{key:"_checkParentType",value:function(){this._parent instanceof t||this._parent instanceof De||Ue.modelGroupParentException()}}]),t}(Le)).\u0275fac=function(e){return new(e||Oe)(r.Jb(k,5),r.Jb(R,10),r.Jb(I,10))},Oe.\u0275dir=r.Eb({type:Oe,selectors:[["","ngModelGroup",""]],inputs:{name:["ngModelGroup","name"]},exportAs:["ngModelGroup"],features:[r.yb([Fe]),r.wb]}),Oe),ze={provide:x,useExisting:Object(r.S)((function(){return Be}))},qe=Promise.resolve(null),Be=((Ee=function(e){function t(e,n,i,o){var a;return _classCallCheck(this,t),(a=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).control=new je,a._registered=!1,a.update=new r.n,a._parent=e,a._rawValidators=n||[],a._rawAsyncValidators=i||[],a.valueAccessor=function(e,t){if(!t)return null;Array.isArray(t)||pe(e,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,i=void 0;return t.forEach((function(t){var o;t.constructor===_?n=t:(o=t,me.some((function(e){return o.constructor===e}))?(r&&pe(e,"More than one built-in value accessor matches form control with"),r=t):(i&&pe(e,"More than one custom value accessor matches form control with"),i=t))})),i||r||n||(pe(e,"No valid value accessor for form control with"),null)}(_assertThisInitialized(a),o),a}return _inherits(t,e),_createClass(t,[{key:"ngOnChanges",value:function(e){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in e&&this._updateDisabled(e),function(e,t){if(!e.hasOwnProperty("model"))return!1;var n=e.model;return!!n.isFirstChange()||!Object(r.rb)(t,n.currentValue)}(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}},{key:"ngOnDestroy",value:function(){this.formDirective&&this.formDirective.removeControl(this)}},{key:"viewToModelUpdate",value:function(e){this.viewModel=e,this.update.emit(e)}},{key:"_setUpControl",value:function(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}},{key:"_isStandalone",value:function(){return!this._parent||!(!this.options||!this.options.standalone)}},{key:"_setUpStandalone",value:function(){de(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}},{key:"_checkForErrors",value:function(){this._isStandalone()||this._checkParentType(),this._checkName()}},{key:"_checkParentType",value:function(){!(this._parent instanceof He)&&this._parent instanceof Le?Ue.formGroupNameException():this._parent instanceof He||this._parent instanceof De||Ue.modelParentException()}},{key:"_checkName",value:function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||Ue.missingNameException()}},{key:"_updateValue",value:function(e){var t=this;qe.then((function(){t.control.setValue(e,{emitViewToModelChange:!1})}))}},{key:"_updateDisabled",value:function(e){var t=this,n=e.isDisabled.currentValue,r=""===n||n&&"false"!==n;qe.then((function(){r&&!t.control.disabled?t.control.disable():!r&&t.control.disabled&&t.control.enable()}))}},{key:"path",get:function(){return this._parent?fe(this.name,this._parent):[this.name]}},{key:"formDirective",get:function(){return this._parent?this._parent.formDirective:null}},{key:"validator",get:function(){return ye(this._rawValidators)}},{key:"asyncValidator",get:function(){return ge(this._rawAsyncValidators)}}]),t}(x)).\u0275fac=function(e){return new(e||Ee)(r.Jb(k,9),r.Jb(R,10),r.Jb(I,10),r.Jb(p,10))},Ee.\u0275dir=r.Eb({type:Ee,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[r.yb([ze]),r.wb,r.xb()]}),Ee),Ge=((Se=function e(){_classCallCheck(this,e)}).\u0275fac=function(e){return new(e||Se)},Se.\u0275dir=r.Eb({type:Se,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),Se),We={provide:R,useExisting:Object(r.S)((function(){return Ze})),multi:!0},Ze=((Pe=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"validate",value:function(e){return this.required?M.required(e):null}},{key:"registerOnValidatorChange",value:function(e){this._onChange=e}},{key:"required",get:function(){return this._required},set:function(e){this._required=null!=e&&!1!==e&&"false"!=="".concat(e),this._onChange&&this._onChange()}}]),e}()).\u0275fac=function(e){return new(e||Pe)},Pe.\u0275dir=r.Eb({type:Pe,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(e,t){2&e&&r.Ab("required",t.required?"":null)},inputs:{required:"required"},features:[r.yb([We])]}),Pe),Qe=((Te=function e(){_classCallCheck(this,e)}).\u0275mod=r.Hb({type:Te}),Te.\u0275inj=r.Gb({factory:function(e){return new(e||Te)}}),Te),Je=((xe=function e(){_classCallCheck(this,e)}).\u0275mod=r.Hb({type:xe}),xe.\u0275inj=r.Gb({factory:function(e){return new(e||xe)},providers:[Q],imports:[Qe]}),xe)},"4I5i":function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var r=function(){function e(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return e.prototype=Object.create(Error.prototype),e}()},"4Sfc":function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var r=function e(t,n,r,i,o){_classCallCheck(this,e),this.id=t,this.name=n,this.category=r,this.description=i,this.price=o}},"5+tZ":function(e,t,n){"use strict";n.d(t,"a",(function(){return u}));var r=n("ZUHj"),i=n("l7GE"),o=n("51Dv"),a=n("lJxs"),s=n("Cfvw");function u(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof t?function(r){return r.pipe(u((function(n,r){return Object(s.a)(e(n,r)).pipe(Object(a.a)((function(e,i){return t(n,e,r,i)})))}),n))}:("number"==typeof t&&(n=t),function(t){return t.lift(new c(e,n))})}var c=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new l(e,this.project,this.concurrent))}}]),e}(),l=function(e){function t(e,n){var r,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=i,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(i.a)},"51Dv":function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var r=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).parent=e,i.outerValue=n,i.outerIndex=r,i.index=0,i}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}},{key:"_error",value:function(e){this.parent.notifyError(e,this),this.unsubscribe()}},{key:"_complete",value:function(){this.parent.notifyComplete(this),this.unsubscribe()}}]),t}(n("7o/Q").a)},"7o/Q":function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n("n6bG"),i=n("gRHU"),o=n("quSY"),a=n("2QA8"),s=n("2fFW"),u=n("NJ4a"),c=function(e){function t(e,n,r){var o;switch(_classCallCheck(this,t),(o=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).syncErrorValue=null,o.syncErrorThrown=!1,o.syncErrorThrowable=!1,o.isStopped=!1,arguments.length){case 0:o.destination=i.a;break;case 1:if(!e){o.destination=i.a;break}if("object"==typeof e){e instanceof t?(o.syncErrorThrowable=e.syncErrorThrowable,o.destination=e,e.add(_assertThisInitialized(o))):(o.syncErrorThrowable=!0,o.destination=new l(_assertThisInitialized(o),e));break}default:o.syncErrorThrowable=!0,o.destination=new l(_assertThisInitialized(o),e,n,r)}return o}return _inherits(t,e),_createClass(t,[{key:a.a,value:function(){return this}},{key:"next",value:function(e){this.isStopped||this._next(e)}},{key:"error",value:function(e){this.isStopped||(this.isStopped=!0,this._error(e))}},{key:"complete",value:function(){this.isStopped||(this.isStopped=!0,this._complete())}},{key:"unsubscribe",value:function(){this.closed||(this.isStopped=!0,_get(_getPrototypeOf(t.prototype),"unsubscribe",this).call(this))}},{key:"_next",value:function(e){this.destination.next(e)}},{key:"_error",value:function(e){this.destination.error(e),this.unsubscribe()}},{key:"_complete",value:function(){this.destination.complete(),this.unsubscribe()}},{key:"_unsubscribeAndRecycle",value:function(){var e=this._parentOrParents;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}],[{key:"create",value:function(e,n,r){var i=new t(e,n,r);return i.syncErrorThrowable=!1,i}}]),t}(o.a),l=function(e){function t(e,n,o,a){var s,u;_classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parentSubscriber=e;var c=_assertThisInitialized(s);return Object(r.a)(n)?u=n:n&&(u=n.next,o=n.error,a=n.complete,n!==i.a&&(c=Object.create(n),Object(r.a)(c.unsubscribe)&&s.add(c.unsubscribe.bind(c)),c.unsubscribe=s.unsubscribe.bind(_assertThisInitialized(s)))),s._context=c,s._next=u,s._error=o,s._complete=a,s}return _inherits(t,e),_createClass(t,[{key:"next",value:function(e){if(!this.isStopped&&this._next){var t=this._parentSubscriber;s.a.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}},{key:"error",value:function(e){if(!this.isStopped){var t=this._parentSubscriber,n=s.a.useDeprecatedSynchronousErrorHandling;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):Object(u.a)(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;Object(u.a)(e)}}}},{key:"complete",value:function(){var e=this;if(!this.isStopped){var t=this._parentSubscriber;if(this._complete){var n=function(){return e._complete.call(e._context)};s.a.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,n),this.unsubscribe()):(this.__tryOrUnsub(n),this.unsubscribe())}else this.unsubscribe()}}},{key:"__tryOrUnsub",value:function(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.a.useDeprecatedSynchronousErrorHandling)throw n;Object(u.a)(n)}}},{key:"__tryOrSetError",value:function(e,t,n){if(!s.a.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.a.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(Object(u.a)(r),!0)}return!1}},{key:"_unsubscribe",value:function(){var e=this._parentSubscriber;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}]),t}(c)},"9ppp":function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var r=function(){function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e}()},Cfvw:function(e,t,n){"use strict";var r=n("HDdC"),i=n("SeVD"),o=n("quSY"),a=n("kJWO"),s=n("jZKg"),u=n("Lhse"),c=n("c2HN"),l=n("I55L");function h(e,t){return t?function(e,t){if(null!=e){if(function(e){return e&&"function"==typeof e[a.a]}(e))return function(e,t){return new r.a((function(n){var r=new o.a;return r.add(t.schedule((function(){var i=e[a.a]();r.add(i.subscribe({next:function(e){r.add(t.schedule((function(){return n.next(e)})))},error:function(e){r.add(t.schedule((function(){return n.error(e)})))},complete:function(){r.add(t.schedule((function(){return n.complete()})))}}))}))),r}))}(e,t);if(Object(c.a)(e))return function(e,t){return new r.a((function(n){var r=new o.a;return r.add(t.schedule((function(){return e.then((function(e){r.add(t.schedule((function(){n.next(e),r.add(t.schedule((function(){return n.complete()})))})))}),(function(e){r.add(t.schedule((function(){return n.error(e)})))}))}))),r}))}(e,t);if(Object(l.a)(e))return Object(s.a)(e,t);if(function(e){return e&&"function"==typeof e[u.a]}(e)||"string"==typeof e)return function(e,t){if(!e)throw new Error("Iterable cannot be null");return new r.a((function(n){var r,i=new o.a;return i.add((function(){r&&"function"==typeof r.return&&r.return()})),i.add(t.schedule((function(){r=e[u.a](),i.add(t.schedule((function(){if(!n.closed){var e,t;try{var i=r.next();e=i.value,t=i.done}catch(o){return void n.error(o)}t?n.complete():(n.next(e),this.schedule())}})))}))),i}))}(e,t)}throw new TypeError((null!==e&&typeof e||e)+" is not observable")}(e,t):e instanceof r.a?e:new r.a(Object(i.a)(e))}n.d(t,"a",(function(){return h}))},DH7j:function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var r=Array.isArray||function(e){return e&&"number"==typeof e.length}},DZdm:function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var r=n("lJxs"),i=n("tk/3"),o=n("fXoL"),a=function(){var e=function(){function e(t){_classCallCheck(this,e),this.http=t,this.baseUrl="/api/"}return _createClass(e,[{key:"getProducts",value:function(){return this.http.get(this.baseUrl+"products")}},{key:"saveOrder",value:function(e){return this.http.post(this.baseUrl+"orders",e)}},{key:"authenticate",value:function(e,t){var n=this;return this.http.post(this.baseUrl+"login",{name:e,password:t}).pipe(Object(r.a)((function(e){return n.auth_token=e.success?e.token:null,e.success})))}},{key:"saveProduct",value:function(e){return this.http.post(this.baseUrl+"products",e,this.getOptions())}},{key:"updateProduct",value:function(e){return this.http.put("".concat(this.baseUrl,"products/").concat(e.id),e,this.getOptions())}},{key:"deleteProduct",value:function(e){return this.http.delete("".concat(this.baseUrl,"products/").concat(e),this.getOptions())}},{key:"getOrders",value:function(){return this.http.get(this.baseUrl+"orders",this.getOptions())}},{key:"deleteOrder",value:function(e){return this.http.delete("".concat(this.baseUrl,"orders/").concat(e),this.getOptions())}},{key:"updateOrder",value:function(e){return this.http.put("".concat(this.baseUrl,"orders/").concat(e.id),e,this.getOptions())}},{key:"getOptions",value:function(){return{headers:new i.c({Authorization:"Bearer<".concat(this.auth_token,">")})}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(o.Qb(i.a))},e.\u0275prov=o.Fb({token:e,factory:e.\u0275fac}),e}()},EY2u:function(e,t,n){"use strict";n.d(t,"a",(function(){return i})),n.d(t,"b",(function(){return o}));var r=n("HDdC"),i=new r.a((function(e){return e.complete()}));function o(e){return e?function(e){return new r.a((function(t){return e.schedule((function(){return t.complete()}))}))}(e):i}},GyhO:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n("LRne"),i=n("0EUg");function o(){return Object(i.a)()(Object(r.a).apply(void 0,arguments))}},HDdC:function(e,t,n){"use strict";var r=n("7o/Q"),i=n("2QA8"),o=n("gRHU"),a=n("kJWO"),s=n("mCNh"),u=n("2fFW");n.d(t,"a",(function(){return l}));var c,l=((c=function(){function e(t){_classCallCheck(this,e),this._isScalar=!1,t&&(this._subscribe=t)}return _createClass(e,[{key:"lift",value:function(t){var n=new e;return n.source=this,n.operator=t,n}},{key:"subscribe",value:function(e,t,n){var a=this.operator,s=function(e,t,n){if(e){if(e instanceof r.a)return e;if(e[i.a])return e[i.a]()}return e||t||n?new r.a(e,t,n):new r.a(o.a)}(e,t,n);if(s.add(a?a.call(s,this.source):this.source||u.a.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),u.a.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}},{key:"_trySubscribe",value:function(e){try{return this._subscribe(e)}catch(t){u.a.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){var t=e,n=t.closed,i=t.destination,o=t.isStopped;if(n||o)return!1;e=i&&i instanceof r.a?i:null}return!0}(e)?e.error(t):console.warn(t)}}},{key:"forEach",value:function(e,t){var n=this;return new(t=h(t))((function(t,r){var i;i=n.subscribe((function(t){try{e(t)}catch(n){r(n),i&&i.unsubscribe()}}),r,t)}))}},{key:"_subscribe",value:function(e){var t=this.source;return t&&t.subscribe(e)}},{key:a.a,value:function(){return this}},{key:"pipe",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(s=t.pop())):"number"==typeof c&&(s=t.pop()),null===u&&1===t.length&&t[0]instanceof r.a?t[0]:Object(o.a)(s)(Object(a.a)(t,u))}},XNiG:function(e,t,n){"use strict";var r=n("HDdC"),i=n("7o/Q"),o=n("quSY"),a=n("9ppp"),s=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).subject=e,r.subscriber=n,r.closed=!1,r}return _inherits(t,e),_createClass(t,[{key:"unsubscribe",value:function(){if(!this.closed){this.closed=!0;var e=this.subject,t=e.observers;if(this.subject=null,t&&0!==t.length&&!e.isStopped&&!e.closed){var n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}}}]),t}(o.a),u=n("2QA8");n.d(t,"b",(function(){return l})),n.d(t,"a",(function(){return h}));var c,l=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).destination=e,n}return _inherits(t,e),t}(i.a),h=((c=function(e){function t(){var e;return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).observers=[],e.closed=!1,e.isStopped=!1,e.hasError=!1,e.thrownError=null,e}return _inherits(t,e),_createClass(t,[{key:u.a,value:function(){return new l(this)}},{key:"lift",value:function(e){var t=new f(this,this);return t.operator=e,t}},{key:"next",value:function(e){if(this.closed)throw new a.a;if(!this.isStopped)for(var t=this.observers,n=t.length,r=t.slice(),i=0;i4&&void 0!==arguments[4]?arguments[4]:new r.a(e,n,a);if(!s.closed)return t instanceof o.a?t.subscribe(s):Object(i.a)(t)(s)}},bHdf:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n("5+tZ"),i=n("SpAZ");function o(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return Object(r.a)(i.a,e)}},bOdf:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var r=n("5+tZ");function i(e,t){return Object(r.a)(e,t,1)}},c2HN:function(e,t,n){"use strict";function r(e){return!!e&&"function"!=typeof e.subscribe&&"function"==typeof e.then}n.d(t,"a",(function(){return r}))},eIep:function(e,t,n){"use strict";n.d(t,"a",(function(){return u}));var r=n("l7GE"),i=n("51Dv"),o=n("ZUHj"),a=n("lJxs"),s=n("Cfvw");function u(e,t){return"function"==typeof t?function(n){return n.pipe(u((function(n,r){return Object(s.a)(e(n,r)).pipe(Object(a.a)((function(e,i){return t(n,e,r,i)})))})))}:function(t){return t.lift(new c(e))}}var c=function(){function e(t){_classCallCheck(this,e),this.project=t}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new l(e,this.project))}}]),e}(),l=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){var t,n=this.index++;try{t=this.project(e,n)}catch(r){return void this.destination.error(r)}this._innerSub(t,e,n)}},{key:"_innerSub",value:function(e,t,n){var r=this.innerSubscription;r&&r.unsubscribe();var a=new i.a(this,t,n),s=this.destination;s.add(a),this.innerSubscription=Object(o.a)(this,e,void 0,void 0,a),this.innerSubscription!==a&&s.add(this.innerSubscription)}},{key:"_complete",value:function(){var e=this.innerSubscription;e&&!e.closed||_get(_getPrototypeOf(t.prototype),"_complete",this).call(this),this.unsubscribe()}},{key:"_unsubscribe",value:function(){this.innerSubscription=null}},{key:"notifyComplete",value:function(e){this.destination.remove(e),this.innerSubscription=null,this.isStopped&&_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"notifyNext",value:function(e,t,n,r,i){this.destination.next(t)}}]),t}(r.a)},fXoL:function(e,t,n){"use strict";var r=n("XNiG"),i=n("quSY"),o=n("HDdC"),a=n("VRyK"),s=n("oB13"),u=n("x+ZX");function c(){return new r.a}function l(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function i(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:p.Default;if(void 0===$)throw new Error("inject() must be called from an injection context");return null===$?re(e,void 0,t):$.get(e,t&p.Optional?null:void 0,t)}function ne(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p.Default;return(N||te)(R(e),t)}function re(e,t,n){var r=_(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&p.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(T(e),"]"))}function ie(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:J;if(t===J){var n=new Error("NullInjectorError: No provider for ".concat(T(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),ae=function e(){_classCallCheck(this,e)},se=function e(){_classCallCheck(this,e)};function ue(e,t){e.forEach((function(e){return Array.isArray(e)?ue(e,t):t(e)}))}function ce(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function le(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function he(e,t){var n=fe(e,t);if(n>=0)return e[1|n]}function fe(e,t){return function(e,t,n){for(var r=0,i=e.length>>1;i!==r;){var o=r+(i-r>>1),a=e[o<<1];if(t===a)return o<<1;a>t?i=o:r=o+1}return~(i<<1)}(e,t)}var de=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),ve=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function pe(e){return""+{toString:e}}var ye={},ge=[],me=0;function be(e){var t=e.type,n=t.prototype,r={},i={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===de.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||ge,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||ve.Emulated,id:"c",styles:e.styles||ge,_:null,setInput:null,schemas:e.schemas||null,tView:null};return i._=pe((function(){var t=e.directives,n=e.features,o=e.pipes;i.id+=me++,i.inputs=Se(e.inputs,r),i.outputs=Se(e.outputs),n&&n.forEach((function(e){return e(i)})),i.directiveDefs=t?function(){return("function"==typeof t?t():t).map(_e)}:null,i.pipeDefs=o?function(){return("function"==typeof o?o():o).map(Ce)}:null})),i}function _e(e){return Te(e)||function(e){return e[H]||null}(e)}function Ce(e){return function(e){return e[z]||null}(e)}var ke={};function we(e){var t={type:e.type,bootstrap:e.bootstrap||ge,declarations:e.declarations||ge,imports:e.imports||ge,exports:e.exports||ge,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&pe((function(){ke[e.id]=e.type})),t}function Oe(e,t){return pe((function(){var n=Ae(e,!0);n.declarations=t.declarations||ge,n.imports=t.imports||ge,n.exports=t.exports||ge}))}function Se(e,t){if(null==e)return ye;var n={};for(var r in e)if(e.hasOwnProperty(r)){var i=e[r],o=i;Array.isArray(i)&&(o=i[1],i=i[0]),n[i]=r,t&&(t[i]=o)}return n}var Ee=be;function xe(e){return{type:e.type,name:e.name,factory:null,pure:!1!==e.pure,onDestroy:e.type.prototype.ngOnDestroy||null}}function Te(e){return e[F]||null}function Pe(e,t){return e.hasOwnProperty(G)?e[G]:null}function Ae(e,t){var n=e[q]||null;if(!n&&!0===t)throw new Error("Type ".concat(T(e)," does not have '\u0275mod' property."));return n}function je(e){return Array.isArray(e)&&"object"==typeof e[1]}function Re(e){return Array.isArray(e)&&!0===e[1]}function Ie(e){return 0!=(8&e.flags)}function Ne(e){return 2==(2&e.flags)}function Me(e){return 1==(1&e.flags)}function De(e){return null!==e.template}function Le(e){return 0!=(512&e[2])}var Ve={lFrame:it(null),bindingsEnabled:!0,checkNoChangesMode:!1};function Ue(){return Ve.bindingsEnabled}function Fe(){return Ve.lFrame.lView}function He(){return Ve.lFrame.tView}function ze(e){Ve.lFrame.contextLView=e}function qe(){return Ve.lFrame.previousOrParentTNode}function Be(e,t){Ve.lFrame.previousOrParentTNode=e,Ve.lFrame.isParent=t}function Ge(){return Ve.lFrame.isParent}function We(){return Ve.checkNoChangesMode}function Ze(e){Ve.checkNoChangesMode=e}function Qe(){var e=Ve.lFrame,t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function Je(){return Ve.lFrame.bindingIndex}function Ke(){return Ve.lFrame.bindingIndex++}function Xe(e){var t=Ve.lFrame,n=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,n}function $e(e,t){var n=Ve.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function Ye(){return Ve.lFrame.currentQueryIndex}function et(e){Ve.lFrame.currentQueryIndex=e}function tt(e,t){var n=rt();Ve.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function nt(e,t){var n=rt(),r=e[1];Ve.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function rt(){var e=Ve.lFrame,t=null===e?null:e.child;return null===t?it(e):t}function it(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function ot(){var e=Ve.lFrame;return Ve.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var at=ot;function st(){var e=ot();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function ut(){return Ve.lFrame.selectedIndex}function ct(e){Ve.lFrame.selectedIndex=e}function lt(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[a]<0&&(e[18]+=65536),(o>10>16&&(3&e[2])===t&&(e[2]+=1024,o.call(a)):o.call(a)}var yt=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},gt=void 0;function mt(e){gt=e}function bt(e){return!!e.listen}var _t={createRenderer:function(e,t){return void 0!==gt?gt:"undefined"!=typeof document?document:void 0}};function Ct(e,t,n){for(var r=bt(e),i=0;it){a=o-1;break}}}for(;o>16}function Pt(e,t){for(var n=Tt(e),r=t;n>0;)r=r[15],n--;return r}function At(e){return"string"==typeof e?e:null==e?"":""+e}function jt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():At(e)}var Rt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(U);function It(e){return e instanceof Function?e():e}var Nt=!0;function Mt(e){var t=Nt;return Nt=e,t}var Dt=0;function Lt(e,t){var n=Ut(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,Vt(r.data,e),Vt(t,null),Vt(r.blueprint,null));var i=Ft(e,t),o=e.injectorIndex;if(Et(i))for(var a=xt(i),s=Pt(i,t),u=s[1].data,c=0;c<8;c++)t[o+c]=s[a+c]|u[a+c];return t[o+8]=i,o}function Vt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Ft(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Ht(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[W]:n.charCodeAt(0)||0;null==r&&(r=n[W]=Dt++);var i=255&r,o=1<3&&void 0!==arguments[3]?arguments[3]:p.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==e){var o=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[W];return"number"==typeof t&&t>0?255&t:t}(n);if("function"==typeof o){tt(t,e);try{var a=o();if(null!=a||r&p.Optional)return a;throw new Error("No provider for ".concat(jt(n),"!"))}finally{at()}}else if("number"==typeof o){if(-1===o)return new Jt(e,t);var s=null,u=Ut(e,t),c=-1,l=r&p.Host?t[16][6]:null;for((-1===u||r&p.SkipSelf)&&(c=-1===u?Ft(e,t):t[u+8],Qt(r,!1)?(s=t[1],u=xt(c),t=Pt(c,t)):u=-1);-1!==u;){c=t[u+8];var h=t[1];if(Zt(o,u,h.data)){var f=Bt(u,t,n,s,r,l);if(f!==qt)return f}Qt(r,t[1].data[u+8]===l)&&Zt(o,u,t)?(s=h,u=xt(c),t=Pt(c,t)):u=-1}}}if(r&p.Optional&&void 0===i&&(i=null),0==(r&(p.Self|p.Host))){var d=t[9],v=ee(void 0);try{return d?d.get(n,i,r&p.Optional):re(n,i,r&p.Optional)}finally{ee(v)}}if(r&p.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(jt(n),"]"))}var qt={};function Bt(e,t,n,r,i,o){var a=t[1],s=a.data[e+8],u=Gt(s,a,n,null==r?Ne(s)&&Nt:r!=a&&3===s.type,i&p.Host&&o===s);return null!==u?Wt(t,a,u,s):qt}function Gt(e,t,n,r,i){for(var o=e.providerIndexes,a=t.data,s=65535&o,u=e.directiveStart,c=o>>16,l=i?s+c:e.directiveEnd,h=r?s:s+c;h=u&&f.type===n)return h}if(i){var d=a[u];if(d&&De(d)&&d.type===n)return u}return null}function Wt(e,t,n,r){var i=e[n],o=t.data;if(i instanceof yt){var a=i;if(a.resolving)throw new Error("Circular dep for ".concat(jt(o[n])));var s,u=Mt(a.canSeeViewProviders);a.resolving=!0,a.injectImpl&&(s=ee(a.injectImpl)),tt(e,r);try{i=e[n]=a.factory(void 0,o,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,i=t.onInit,o=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),i&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,i),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,o))}(n,o[n],t)}finally{a.injectImpl&&ee(s),Mt(u),a.resolving=!1,at()}}return i}function Zt(e,t,n){var r=64&e,i=32&e;return!!((128&e?r?i?n[t+7]:n[t+6]:i?n[t+5]:n[t+4]:r?i?n[t+3]:n[t+2]:i?n[t+1]:n[t])&1<1?t-1:0),r=1;r',!n.querySelector||n.querySelector("svg")?(n.innerHTML='

',this.getInertBodyElement=n.querySelector&&n.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(e){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return _createClass(e,[{key:"getInertBodyElement_XHR",value:function(e){e=""+e+"";try{e=encodeURI(e)}catch(r){return null}var t=new XMLHttpRequest;t.responseType="document",t.open("GET","data:text/html;charset=utf-8,"+e,!1),t.send(void 0);var n=t.response.body;return n.removeChild(n.firstChild),n}},{key:"getInertBodyElement_DOMParser",value:function(e){e=""+e+"";try{var t=(new window.DOMParser).parseFromString(e,"text/html").body;return t.removeChild(t.firstChild),t}catch(n){return null}}},{key:"getInertBodyElement_InertDocument",value:function(e){var t=this.inertDocument.createElement("template");if("content"in t)return t.innerHTML=e,t;var n=this.inertDocument.createElement("body");return n.innerHTML=e,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}},{key:"stripCustomNsAttrs",value:function(e){for(var t=e.attributes,n=t.length-1;0"),!0}},{key:"endElement",value:function(e){var t=e.nodeName.toLowerCase();jn.hasOwnProperty(t)&&!xn.hasOwnProperty(t)&&(this.buf.push(""))}},{key:"chars",value:function(e){this.buf.push(Un(e))}},{key:"checkClobberedElement",value:function(e,t){if(t&&(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: ".concat(e.outerHTML));return t}}]),e}(),Ln=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Vn=/([^\#-~ |!])/g;function Un(e){return e.replace(/&/g,"&").replace(Ln,(function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"})).replace(Vn,(function(e){return"&#"+e.charCodeAt(0)+";"})).replace(//g,">")}function Fn(e,t){var n=null;try{En=En||new _n(e);var r=t?String(t):"";n=En.getInertBodyElement(r);var i=5,o=r;do{if(0===i)throw new Error("Failed to sanitize html because the input is unstable");i--,r=o,o=n.innerHTML,n=En.getInertBodyElement(r)}while(r!==o);var a=new Dn,s=a.sanitizeChildren(Hn(n)||n);return mn()&&a.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),s}finally{if(n)for(var u=Hn(n)||n;u.firstChild;)u.removeChild(u.firstChild)}}function Hn(e){return"content"in e&&function(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}var zn=function(){var e={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return e[e.NONE]="NONE",e[e.HTML]="HTML",e[e.STYLE]="STYLE",e[e.SCRIPT]="SCRIPT",e[e.URL]="URL",e[e.RESOURCE_URL]="RESOURCE_URL",e}(),qn=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|Z|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:attr|calc|var))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Bn=/^url\(([^)]+)\)$/;function Gn(e){if(!(e=String(e).trim()))return"";var t=e.match(Bn);return t&&wn(t[1])===t[1]||e.match(qn)&&function(e){for(var t=!0,n=!0,r=0;ro?"":i[l+1].toLowerCase();var f=8&r?h:null;if(f&&-1!==sr(f,c,0)||2&r&&c!==h){if(hr(r))return!1;a=!0}}}}else{if(!a&&!hr(r)&&!hr(u))return!1;if(a&&hr(u))continue;a=!1,r=u|1&r}}return hr(r)||a}function hr(e){return 0==(1&e)}function fr(e,t,n,r){if(null===t)return-1;var i=0;if(r||!n){for(var o=!1;i-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+s+'"':"")+"]"}else 8&r?i+="."+a:4&r&&(i+=" "+a);else""===i||hr(a)||(t+=vr(o,i),i=""),r=a,o=o||!hr(r);n++}return""!==i&&(t+=vr(o,i)),t}var yr={};function gr(e){var t=e[3];return Re(t)?t[3]:t}function mr(e){br(He(),Fe(),ut()+e,We())}function br(e,t,n,r){if(!r)if(3==(3&t[2])){var i=e.preOrderCheckHooks;null!==i&&ht(t,i,n)}else{var o=e.preOrderHooks;null!==o&&ft(t,o,0,n)}ct(n)}function _r(e,t){return e<<17|t<<2}function Cr(e){return e>>17&32767}function kr(e){return 2|e}function wr(e){return(131068&e)>>2}function Or(e,t){return-131069&e|t<<2}function Sr(e){return 1|e}function Er(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&br(e,t,0,We()),n(r,i)}finally{ct(o)}}function Nr(e,t,n){Ue()&&(function(e,t,n,r){var i=n.directiveStart,o=n.directiveEnd;e.firstCreatePass||Lt(n,t),ir(r,t);for(var a=n.initialInputs,s=i;s2&&void 0!==arguments[2]?arguments[2]:Jn,r=t.localNames;if(null!==r)for(var i=t.index+1,o=0;o0&&(e[n-1][4]=r[4]);var o=le(e,9+t);gi(r[1],r,!1,null);var a=o[5];null!==a&&a.detachView(o[1]),r[3]=null,r[4]=null,r[2]&=-129}return r}}function _i(e,t){if(!(256&t[2])){var n=t[11];bt(n)&&n.destroyNode&&Ai(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return ki(e[1],e);for(;t;){var n=null;if(je(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)je(t)&&ki(t[1],t),t=Ci(t,e);null===t&&(t=e),je(t)&&ki(t[1],t),n=t&&t[4]}t=n}}(t)}}function Ci(e,t){var n;return je(e)&&(n=e[6])&&2===n.type?vi(n,e):e[3]===t?null:e[3]}function ki(e,t){if(!(256&t[2])){t[2]&=-129,t[2]|=256,function(e,t){var n;if(null!=e&&null!=(n=e.destroyHooks))for(var r=0;r=0?r[u]():r[-u].unsubscribe(),i+=2}else n[i].call(r[n[i+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&bt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&Re(t[3])){r!==t[3]&&mi(r,t);var i=t[5];null!==i&&i.detachView(e)}}}function wi(e,t,n,r){bt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function Oi(e,t,n){bt(e)?e.appendChild(t,n):t.appendChild(n)}function Si(e,t,n,r){null!==r?wi(e,t,n,r):Oi(e,t,n)}function Ei(e,t){return bt(e)?e.parentNode(t):t.parentNode}function xi(e,t,n,r){var i=function(e,t,n){for(var r=t.parent;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){var i=n[6];return 2===i.type?pi(i,n):n[0]}if(t&&5===t.type&&4&t.flags)return Jn(t,n).parentNode;if(2&r.flags){var o=e.data,a=o[o[r.index].directiveStart].encapsulation;if(a!==ve.ShadowDom&&a!==ve.Native)return null}return Jn(r,n)}(e,r,t);if(null!=i){var o=t[11],a=function(e,t){if(2===e.type){var n=vi(e,t);return null===n?null:Ti(n.indexOf(t,9)-9,n)}return 4===e.type||5===e.type?Jn(e,t):null}(r.parent||t[6],t);if(Array.isArray(n))for(var s=0;s-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}_i(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r;t=this._lView[1],r=e,ci(n=this._lView).push(r),t.firstCreatePass&&li(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){ii(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){oi(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){Ze(!0);try{oi(e,t,n)}finally{Ze(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,Ai(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,i){for(var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var a=n[r.index];if(null!==a&&i.push(Zn(a)),Re(a))for(var s=9;s0;)this.remove(this.length-1)}},{key:"get",value:function(e){return null!==this._lContainer[8]&&this._lContainer[8][e]||null}},{key:"createEmbeddedView",value:function(e,t,n){var r=e.createEmbeddedView(t||{});return this.insert(r,n),r}},{key:"createComponent",value:function(e,t,n,r,i){var o=n||this.parentInjector;if(!i&&null==e.ngModule&&o){var a=o.get(ae,null);a&&(i=a)}var s=e.create(o,r,void 0,i);return this.insert(s.hostView,t),s}},{key:"insert",value:function(e,t){var n=e._lView,r=n[1];if(e.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");if(this.allocateContainerIfNeeded(),Re(n[3])){var i=this.indexOf(e);if(-1!==i)this.detach(i);else{var o=n[3],a=new Di(o,o[6],o[3]);a.detach(a.indexOf(e))}}var s=this._adjustIndex(t);return function(e,t,n,r){var i=9+r,o=n.length;r>0&&(n[i-1][4]=t),r1&&void 0!==arguments[1]?arguments[1]:0;return null==e?this.length+t:e}},{key:"allocateContainerIfNeeded",value:function(){null===this._lContainer[8]&&(this._lContainer[8]=[])}},{key:"element",get:function(){return Ui(t,this._hostTNode,this._hostView)}},{key:"injector",get:function(){return new Jt(this._hostTNode,this._hostView)}},{key:"parentInjector",get:function(){var e=Ft(this._hostTNode,this._hostView),t=Pt(e,this._hostView),n=function(e,t,n){if(n.parent&&-1!==n.parent.injectorIndex){for(var r=n.parent.injectorIndex,i=n.parent;null!=i.parent&&r==i.parent.injectorIndex;)i=i.parent;return i}for(var o=Tt(e),a=t,s=t[6];o>1;)s=(a=a[15])[6],o--;return s}(e,this._hostView,this._hostTNode);return Et(e)&&null!=n?new Jt(n,t):new Jt(null,this._hostView)}},{key:"length",get:function(){return this._lContainer.length-9}}]),n}(e));var o=r[n.index];if(Re(o))(function(e,t){e[2]=-2})(i=o);else{var a;if(4===n.type)a=Zn(o);else if(a=r[11].createComment(""),Le(r)){var s=r[11],u=Jn(n,r);wi(s,Ei(s,u),a,function(e,t){return bt(e)?e.nextSibling(t):t.nextSibling}(s,u))}else xi(r[1],r,a,n);r[n.index]=i=Yr(o,r,a,n),ri(r,i)}return new Di(i,n,r)}function zi(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return function(e,t,n){if(!n&&Ne(e)){var r=$n(e.index,t);return new Li(r,r)}return 3===e.type||0===e.type||4===e.type||5===e.type?new Li(t[16],t):null}(qe(),Fe(),e)}var qi=function(){var e=function e(){_classCallCheck(this,e)};return e.__NG_ELEMENT_ID__=function(){return Bi()},e}(),Bi=zi,Gi=new Z("Set Injector scope."),Wi={},Zi={},Qi=[],Ji=void 0;function Ki(){return void 0===Ji&&(Ji=new oe),Ji}function Xi(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Ki(),new $i(e,n,t,r)}var $i=function(){function e(t,n,r){var i=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var a=[];n&&ue(n,(function(e){return i.processProvider(e,t,n)})),ue([t],(function(e){return i.processInjectorType(e,[],a)})),this.records.set(Q,to(void 0,this));var s=this.records.get(Gi);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach((function(e){return i.get(e)})),this.source=o||("object"==typeof t?null:T(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:J,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:p.Default;this.assertNotDestroyed();var r,i=Y(this);try{if(!(n&p.SkipSelf)){var o=this.records.get(e);if(void 0===o){var a=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Z)&&_(e);o=a&&this.injectableDefInScope(a)?to(Yi(e),Wi):null,this.records.set(e,o)}if(null!=o)return this.hydrate(e,o)}return(n&p.Self?Ki():this.parent).get(e,t=n&p.Optional&&t===J?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(T(e)),i)throw s;return function(e,t,n,r){var i=e.ngTempTokenPath;throw t.__source&&i.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var i=T(t);if(Array.isArray(t))i=t.map(T).join(" -> ");else if("object"==typeof t){var o=[];for(var a in t)if(t.hasOwnProperty(a)){var s=t[a];o.push(a+":"+("string"==typeof s?JSON.stringify(s):T(s)))}i="{".concat(o.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(i,"]: ").concat(e.replace(K,"\n "))}("\n"+e.message,i,"R3InjectorError",r),e.ngTokenPath=i,e.ngTempTokenPath=null,e}(s,e,0,this.source)}throw s}finally{Y(i)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(T(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=R(e)))return!1;var i=k(e),o=null==i&&e.ngModule||void 0,a=void 0===o?e:o,s=-1!==n.indexOf(a);if(void 0!==o&&(i=k(o)),null==i)return!1;if(null!=i.imports&&!s){var u;n.push(a);try{ue(i.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var c=function(e){var t=u[e],n=t.ngModule,i=t.providers;ue(i,(function(e){return r.processProvider(e,n,i||Qi)}))},l=0;l0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function no(e){return null!==e&&"object"==typeof e&&X in e}function ro(e){return"function"==typeof e}var io=function(e,t,n){return Xi({name:n},t,e,n)},oo=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?io(e,t,""):io(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=J,e.NULL=new oe,e.\u0275prov=m({token:e,providedIn:"any",factory:function(){return ne(Q)}}),e.__NG_ELEMENT_ID__=-1,e}(),ao=new Z("AnalyzeForEntryComponents"),so=new Map,uo=new Set;function co(e){return"string"==typeof e?e:e.text()}function lo(e,t){for(var n=e.styles,r=e.classes,i=0,o=0;o1&&void 0!==arguments[1]?arguments[1]:p.Default,n=Fe();return null==n?ne(e,t):zt(qe(),n,R(e),t)}function Eo(e){return function(e,t){if("class"===t)return e.classes;if("style"===t)return e.styles;var n=e.attrs;if(n)for(var r=n.length,i=0;i2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,i=Fe(),o=He(),a=qe();return function(e,t,n,r,i,o){var a=arguments.length>6&&void 0!==arguments[6]&&arguments[6],s=arguments.length>7?arguments[7]:void 0,u=Me(r),c=e.firstCreatePass&&(e.cleanup||(e.cleanup=[])),l=ci(t),h=!0;if(3===r.type){var f=Jn(r,t),d=s?s(f):ye,v=d.target||f,p=l.length,y=s?function(e){return s(Zn(e[r.index])).target}:r.index;if(bt(n)){var g=null;if(!s&&u&&(g=function(e,t,n,r){var i=e.cleanup;if(null!=i)for(var o=0;ou?s[u]:null}"string"==typeof a&&(o+=2)}return null}(e,t,i,r.index)),null!==g)(g.__ngLastListenerFn__||g).__ngNextListenerFn__=o,g.__ngLastListenerFn__=o,h=!1;else{o=Vo(r,t,o,!1);var m=n.listen(d.name||v,i,o);l.push(o,m),c&&c.push(i,y,p,p+1)}}else o=Vo(r,t,o,!0),v.addEventListener(i,o,a),l.push(o),c&&c.push(i,y,p,a)}var b,_=r.outputs;if(h&&null!==_&&(b=_[i])){var C=b.length;if(C)for(var k=0;k0&&void 0!==arguments[0]?arguments[0]:1;return function(e){return(Ve.lFrame.contextLView=function(e,t){for(;e>0;)t=t[15],e--;return t}(e,Ve.lFrame.contextLView))[8]}(e)}var Fo=[];function Ho(e,t,n,r,i){for(var o=e[n+1],a=null===t,s=r?Cr(o):wr(o),u=!1;0!==s&&(!1===u||a);){var c=e[s+1];zo(e[s],t)&&(u=!0,e[s+1]=r?Sr(c):kr(c)),s=r?Cr(c):wr(c)}u&&(e[n+1]=r?kr(o):Sr(o))}function zo(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&fe(e,t)>=0}function qo(e,t){return function(e,t,n,r){var i,o,a=Fe(),s=He(),u=Xe(2);(s.firstUpdatePass&&function(e,t,n,r){var i=e.data;if(null===i[n+1]){var o=i[ut()+19],a=function(e,t){return t>=e.expandoStartIndex}(e,n);(function(e,t){return 0!=(16&e.flags)})(o)&&null===t&&!a&&(t=!1),t=function(e,t,n,r){var i=function(e){var t=Ve.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}(e),o=t.residualClasses;if(null===i)0===t.classBindings&&(n=Go(n=Bo(null,e,t,n,!0),t.attrs,!0),o=null);else{var a=t.directiveStylingLast;if(-1===a||e[a]!==i)if(n=Bo(i,e,t,n,!0),null===o){var s=function(e,t,n){var r=t.classBindings;if(0!==wr(r))return e[Cr(r)]}(e,t);void 0!==s&&Array.isArray(s)&&function(e,t,n,r){e[Cr(t.classBindings)]=r}(e,t,0,s=Go(s=Bo(null,e,t,s[1],!0),t.attrs,!0))}else o=function(e,t,n){for(var r=void 0,i=t.directiveEnd,o=1+t.directiveStylingLast;o0)&&(l=!0)}else c=n;if(i)if(0!==u){var f=Cr(e[s+1]);e[r+1]=_r(f,s),0!==f&&(e[f+1]=Or(e[f+1],r)),e[s+1]=131071&e[s+1]|r<<17}else e[r+1]=_r(s,0),0!==s&&(e[s+1]=Or(e[s+1],r)),s=r;else e[r+1]=_r(u,0),0===s?s=r:e[u+1]=Or(e[u+1],r),u=r;l&&(e[r+1]=kr(e[r+1])),Ho(e,c,r,!0),Ho(e,c,r,!1),function(e,t,n,r,i){var o=e.residualClasses;null!=o&&"string"==typeof t&&fe(o,t)>=0&&(n[r+1]=Sr(n[r+1]))}(t,c,e,r),a=_r(s,u),t.classBindings=a}(i,o,t,n,a)}}(s,e,u),t!==yr&&_o(a,u,t))&&(null==n&&(i=null===(o=Ve.lFrame)?null:o.currentSanitizer)&&(n=i),function(e,t,n,r,i,o,a,s){if(3===t.type){var u=e.data,c=u[s+1];Zo(1==(1&c)?Wo(u,t,n,i,wr(c),!0):void 0)||(Zo(o)||2==(2&c)&&(o=Wo(u,null,n,i,s,!0)),function(e,t,n,r,i){var o=bt(e);i?o?e.addClass(n,r):n.classList.add(r):o?e.removeClass(n,r):n.classList.remove(r)}(r,0,Qn(ut(),n),i,o))}}(s,s.data[ut()+19],a,a[11],e,a[u+1]=function(e,t){return null==e||("function"==typeof t?e=t(e):"string"==typeof t?e+=t:"object"==typeof e&&(e=T(un(e)))),e}(t,n),0,u))}(e,t,null),qo}function Bo(e,t,n,r,i){var o=null,a=n.directiveEnd,s=n.directiveStylingLast;for(-1===s?s=n.directiveStart:s++;s=0?r[1|a]=o:function(e,t,n,r){var i=e.length;if(i==t)e.push(n,r);else if(1===i)e.push(r,e[0]),e[0]=n;else{for(i--,e.push(e[i-1],e[i]);i>t;)e[i]=e[i-2],i--;e[t]=n,e[t+1]=r}}(r,a=~a,i,o))}return void 0===e?null:e}function Wo(e,t,n,r,i,o){for(var a=null===t,s=void 0;i>0;){var u=e[i],c=Array.isArray(u),l=c?u[1]:u,h=null===l,f=n[i+1];f===yr&&(f=h?Fo:void 0);var d=h?he(f,r):l===r?f:void 0;if(c&&!Zo(d)&&(d=he(u,r)),Zo(d)&&(s=d,a))return s;var v=e[i+1];i=a?Cr(v):wr(v)}if(null!==t){var p=o?t.residualClasses:t.residualStyles;null!=p&&(s=he(p,r))}return s}function Zo(e){return void 0!==e}function Qo(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=Fe(),r=He(),i=e+19,o=r.firstCreatePass?Pr(r,n[6],e,3,null,null):r.data[i],a=n[i]=function(e,t){return bt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);xi(r,n,a,o),Be(o,!1)}function Jo(e){return Ko("",e,""),Jo}function Ko(e,t,n){var r=Fe(),i=function(e,t,n,r){return _o(e,Ke(),n)?t+At(n)+r:yr}(r,e,t,n);return i!==yr&&di(r,ut(),i),Ko}function Xo(e,t,n,r,i){var o=Fe(),a=function(e,t,n,r,i,o){var a=Co(e,Je(),n,i);return Xe(2),a?t+At(n)+r+At(i)+o:yr}(o,e,t,n,r,i);return a!==yr&&di(o,ut(),a),Xo}function $o(e,t,n){var r=Fe();if(_o(r,Ke(),t)){var i=ut();Fr(He(),r,i,e,t,n,!0)}return $o}function Yo(e,t){var n=Yn(e)[1],r=n.data.length-1;lt(n,{directiveStart:r,directiveEnd:r+1})}function ea(e){for(var t=Object.getPrototypeOf(e.type.prototype).constructor,n=!0,r=[e];t;){var i=void 0;if(De(e))i=t.\u0275cmp||t.\u0275dir;else{if(t.\u0275cmp)throw new Error("Directives cannot inherit Components");i=t.\u0275dir}if(i){if(n){r.push(i);var o=e;o.inputs=ta(e.inputs),o.declaredInputs=ta(e.declaredInputs),o.outputs=ta(e.outputs);var a=i.hostBindings;a&&ia(e,a);var s=i.viewQuery,u=i.contentQueries;s&&na(e,s),u&&ra(e,u),g(e.inputs,i.inputs),g(e.declaredInputs,i.declaredInputs),g(e.outputs,i.outputs),o.afterContentChecked=o.afterContentChecked||i.afterContentChecked,o.afterContentInit=e.afterContentInit||i.afterContentInit,o.afterViewChecked=e.afterViewChecked||i.afterViewChecked,o.afterViewInit=e.afterViewInit||i.afterViewInit,o.doCheck=e.doCheck||i.doCheck,o.onDestroy=e.onDestroy||i.onDestroy,o.onInit=e.onInit||i.onInit}var c=i.features;if(c)for(var l=0;l=0;r--){var i=e[r];i.hostVars=t+=i.hostVars,i.hostAttrs=Ot(i.hostAttrs,n=Ot(n,i.hostAttrs))}}(r)}function ta(e){return e===ye?{}:e===ge?[]:e}function na(e,t){var n=e.viewQuery;e.viewQuery=n?function(e,r){t(e,r),n(e,r)}:t}function ra(e,t){var n=e.contentQueries;e.contentQueries=n?function(e,r,i){t(e,r,i),n(e,r,i)}:t}function ia(e,t){var n=e.hostBindings;e.hostBindings=n?function(e,r){t(e,r),n(e,r)}:t}var oa=function(){function e(t,n,r){_classCallCheck(this,e),this.previousValue=t,this.currentValue=n,this.firstChange=r}return _createClass(e,[{key:"isFirstChange",value:function(){return this.firstChange}}]),e}();function aa(){return sa.ngInherit=!0,sa}function sa(e){e.type.prototype.ngOnChanges&&(e.setInput=ua,e.onChanges=function(){var e=ca(this),t=e&&e.current;if(t){var n=e.previous;if(n===ye)e.previous=t;else for(var r in t)n[r]=t[r];e.current=null,this.ngOnChanges(t)}})}function ua(e,t,n,r){var i=ca(e)||function(e,t){return e.__ngSimpleChanges__=t}(e,{previous:ye,current:null}),o=i.current||(i.current={}),a=i.previous,s=this.declaredInputs[n],u=a[s];o[s]=new oa(u&&u.currentValue,t,a===ye),e[r]=t}function ca(e){return e.__ngSimpleChanges__||null}function la(e,t,n,r,i){if(e=R(e),Array.isArray(e))for(var o=0;o>16;if(ro(e)||!e.multi){var v=new yt(c,i,So),p=da(u,t,i?h:h+d,f);-1===p?(Ht(Lt(l,s),a,u),ha(a,e,t.length),t.push(u),l.directiveStart++,l.directiveEnd++,i&&(l.providerIndexes+=65536),n.push(v),s.push(v)):(n[p]=v,s[p]=v)}else{var y=da(u,t,h+d,f),g=da(u,t,h,h+d),m=y>=0&&n[y],b=g>=0&&n[g];if(i&&!b||!i&&!m){Ht(Lt(l,s),a,u);var _=function(e,t,n,r,i){var o=new yt(e,n,So);return o.multi=[],o.index=t,o.componentProviders=0,fa(o,i,r&&!n),o}(i?pa:va,n.length,i,r,c);!i&&b&&(n[g].providerFactory=_),ha(a,e,t.length),t.push(u),l.directiveStart++,l.directiveEnd++,i&&(l.providerIndexes+=65536),n.push(_),s.push(_)}else ha(a,e,y>-1?y:g),fa(n[i?g:y],c,!i&&r);!i&&r&&b&&n[g].componentProviders++}}}function ha(e,t,n){if(ro(t)||t.useClass){var r=(t.useClass||t).prototype.ngOnDestroy;r&&(e.destroyHooks||(e.destroyHooks=[])).push(n,r)}}function fa(e,t,n){e.multi.push(t),n&&e.componentProviders++}function da(e,t,n,r){for(var i=n;i1&&void 0!==arguments[1]?arguments[1]:[];return function(n){n.providersResolver=function(n,r){return function(e,t,n){var r=He();if(r.firstCreatePass){var i=De(e);la(n,r.data,r.blueprint,i,!0),la(t,r.data,r.blueprint,i,!1)}}(n,r?r(e):e,t)}}}var ma=function e(){_classCallCheck(this,e)},ba=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"resolveComponentFactory",value:function(e){throw function(e){var t=Error("No component factory found for ".concat(T(e),". Did you add it to @NgModule.entryComponents?"));return t.ngComponent=e,t}(e)}}]),e}(),_a=function(){var e=function e(){_classCallCheck(this,e)};return e.NULL=new ba,e}(),Ca=function(){var e=function e(t){_classCallCheck(this,e),this.nativeElement=t};return e.__NG_ELEMENT_ID__=function(){return ka(e)},e}(),ka=function(e){return Ui(e,qe(),Fe())},wa=function e(){_classCallCheck(this,e)},Oa=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}(),Sa=function(){var e=function e(){_classCallCheck(this,e)};return e.__NG_ELEMENT_ID__=function(){return Ea()},e}(),Ea=function(){var e=Fe(),t=$n(qe().index,e);return function(e){var t=e[11];if(bt(t))return t;throw new Error("Cannot inject Renderer2 when the application uses Renderer3!")}(je(t)?t:e)},xa=function(){var e=function e(){_classCallCheck(this,e)};return e.\u0275prov=m({token:e,providedIn:"root",factory:function(){return null}}),e}(),Ta=function e(t){_classCallCheck(this,e),this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")},Pa=new Ta("9.0.2"),Aa=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"supports",value:function(e){return yo(e)}},{key:"create",value:function(e){return new Ra(e)}}]),e}(),ja=function(e,t){return t},Ra=function(){function e(t){_classCallCheck(this,e),this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||ja}return _createClass(e,[{key:"forEachItem",value:function(e){var t;for(t=this._itHead;null!==t;t=t._next)e(t)}},{key:"forEachOperation",value:function(e){for(var t=this._itHead,n=this._removalsHead,r=0,i=null;t||n;){var o=!n||t&&t.currentIndex0&&Ii(c,h,_.join(" "))}o=Kn(y[1],0),t&&(o.projection=t.map((function(e){return Array.from(e)}))),i=function(e,t,n,r,i){var o=n[1],a=function(e,t,n){var r=qe();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),Gr(e,r,1),Jr(e,t,n));var i=Wt(t,e,t.length-1,r);ir(i,t);var o=Jn(r,t);return o&&ir(o,t),i}(o,n,t);r.components.push(a),e[8]=a,i&&i.forEach((function(e){return e(a,t)})),t.contentQueries&&t.contentQueries(1,a,n.length-1);var s=qe();if(o.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){ct(s.index-19);var u=n[1];zr(u,t),qr(u,n,t.hostVars),Br(t,a)}return a}(g,this.componentDef,y,v,[Yo]),Ar(p,y,null)}finally{st()}var C=new Ya(this.componentType,i,Ui(Ca,o,y),y,o);return n&&!d||(C.hostView._tViewNode.child=o),C}},{key:"inputs",get:function(){return Ka(this.componentDef.inputs)}},{key:"outputs",get:function(){return Ka(this.componentDef.outputs)}}]),t}(ma),Ya=function(e){function t(e,n,r,i,o){var a,s,u,c;return _classCallCheck(this,t),(a=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,a._rootLView=i,a._tNode=o,a.destroyCbs=[],a.instance=n,a.hostView=a.changeDetectorRef=new Vi(i),a.hostView._tViewNode=(s=i[1],u=i,null==(c=s.node)&&(s.node=c=Vr(0,null,2,-1,null,null)),u[6]=c),a.componentType=e,a}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new Jt(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),es=void 0,ts=["en",[["a","p"],["AM","PM"],es],[["AM","PM"],es,es],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],es,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],es,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",es,"{1} 'at' {0}",es],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],ns={};function rs(e,t,n){"string"!=typeof t&&(n=t,t=e[us.LocaleId]),t=t.toLowerCase().replace(/_/g,"-"),ns[t]=e,n&&(ns[t][us.ExtraData]=n)}function is(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=ss(t);if(n)return n;var r=t.split("-")[0];if(n=ss(r))return n;if("en"===r)return ts;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}function os(e){return is(e)[us.CurrencyCode]||null}function as(e){return is(e)[us.PluralCase]}function ss(e){return e in ns||(ns[e]=U.ng&&U.ng.common&&U.ng.common.locales&&U.ng.common.locales[e]),ns[e]}var us=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function cs(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var ls=new Map,hs={provide:_a,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=Te(e);return new $a(t,this.ngModule)}}]),t}(_a),deps:[ae]},fs=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var i=Ae(e),o=e[B]||null;return o&&cs(o),r._bootstrapComponents=It(i.bootstrap),r._r3Injector=Xi(e,n,[{provide:ae,useValue:_assertThisInitialized(r)},hs],T(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:oo.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:p.Default;return e===oo||e===ae||e===Q?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(_a)}}]),t}(ae),ds=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==Ae(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(T(t)," vs ").concat(T(t.name)))})(n,ls.get(n),t),ls.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new fs(this.moduleType,e)}}]),t}(se);function vs(e,t,n,r){return function(e,t,n,r,i,o){var a=t+n;return _o(e,a,i)?mo(e,a+1,o?r.call(o,i):r(i)):bo(e,a+1)}(Fe(),Qe(),e,t,n,r)}function ps(e,t){var n,r=He(),i=e+19;r.firstCreatePass?(n=function(e,t){if(t)for(var n=t.length-1;n>=0;n--){var r=t[n];if(e===r.name)return r}throw new Error("The pipe '".concat(e,"' could not be found!"))}(t,r.pipeRegistry),r.data[i]=n,n.onDestroy&&(r.destroyHooks||(r.destroyHooks=[])).push(i,n.onDestroy)):n=r.data[i];var o=(n.factory||(n.factory=Pe(n.type)))();return function(e,t,n,r){var i=n+19;i>=e.data.length&&(e.data[i]=null,e.blueprint[i]=null),t[i]=r}(r,Fe(),e,o),o}function ys(e,t,n,r,i,o){var a=Fe(),s=Xn(a,e);return function(e,t){return po.isWrapped(t)&&(t=po.unwrap(t),e[Je()]=yr),t}(a,function(e,t){return e[1].data[t+19].pure}(a,e)?function(e,t,n,r,i,o,a,s,u){var c=t+n;return function(e,t,n,r,i,o){var a=Co(e,t,n,r);return Co(e,t+2,i,o)||a}(e,c,i,o,a,s)?mo(e,c+4,u?r.call(u,i,o,a,s):r(i,o,a,s)):bo(e,c+4)}(a,Qe(),t,s.transform,n,r,i,o,s):s.transform(n,r,i,o))}var gs=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,a=function(e){return null},s=function(){return null};e&&"object"==typeof e?(o=this.__isAsync?function(t){setTimeout((function(){return e.next(t)}))}:function(t){e.next(t)},e.error&&(a=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&&(a=this.__isAsync?function(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var u=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,a,s);return e instanceof i.a&&e.add(u),u}}]),t}(r.a);function ms(){return this._results[fo()]()}var bs=function(){function e(){_classCallCheck(this,e),this.dirty=!0,this._results=[],this.changes=new gs,this.length=0;var t=fo(),n=e.prototype;n[t]||(n[t]=ms)}return _createClass(e,[{key:"map",value:function(e){return this._results.map(e)}},{key:"filter",value:function(e){return this._results.filter(e)}},{key:"find",value:function(e){return this._results.find(e)}},{key:"reduce",value:function(e,t){return this._results.reduce(e,t)}},{key:"forEach",value:function(e){this._results.forEach(e)}},{key:"some",value:function(e){return this._results.some(e)}},{key:"toArray",value:function(){return this._results.slice()}},{key:"toString",value:function(){return this._results.toString()}},{key:"reset",value:function(e){this._results=function e(t,n){void 0===n&&(n=t);for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:[];_classCallCheck(this,e),this.queries=t}return _createClass(e,[{key:"createEmbeddedView",value:function(t){var n=t.queries;if(null!==n){for(var r=null!==t.contentQueries?t.contentQueries[0]:n.length,i=[],o=0;o3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.predicate=t,this.descendants=n,this.isStatic=r,this.read=i},ws=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];_classCallCheck(this,e),this.queries=t}return _createClass(e,[{key:"elementStart",value:function(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:-1;_classCallCheck(this,e),this.metadata=t,this.matches=null,this.indexInDeclarationView=-1,this.crossesNgTemplate=!1,this._appliesToNextNode=!0,this._declarationNodeIndex=n}return _createClass(e,[{key:"elementStart",value:function(e,t){this.isApplyingToNode(t)&&this.matchTNode(e,t)}},{key:"elementEnd",value:function(e){this._declarationNodeIndex===e.index&&(this._appliesToNextNode=!1)}},{key:"template",value:function(e,t){this.elementStart(e,t)}},{key:"embeddedTView",value:function(t,n){return this.isApplyingToNode(t)?(this.crossesNgTemplate=!0,this.addMatch(-t.index,n),new e(this.metadata)):null}},{key:"isApplyingToNode",value:function(e){if(this._appliesToNextNode&&!1===this.metadata.descendants){for(var t=this._declarationNodeIndex,n=e.parent;null!==n&&4===n.type&&n.index!==t;)n=n.parent;return t===(null!==n?n.index:-1)}return this._appliesToNextNode}},{key:"matchTNode",value:function(e,t){if(Array.isArray(this.metadata.predicate))for(var n=this.metadata.predicate,r=0;r0)i.push(s[u/2]);else{for(var l=a[u+1],h=n[-c],f=9;f0&&void 0!==arguments[0]?arguments[0]:p.Default,t=zi(!0);if(null!=t||e&p.Optional)return t;throw new Error("No provider for ChangeDetectorRef!")}var Is=new Z("Application Initializer"),Ns=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(i=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==i})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:i,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(ne(tu))},e.\u0275prov=m({token:e,factory:e.\u0275fac}),e}(),lu=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,du.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return du.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=m({token:e,factory:e.\u0275fac}),e}();function hu(e){du=e}var fu,du=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),vu=function(e,t,n){var r=new ds(n);if(0===so.size)return Promise.resolve(r);var i,o,a=(i=e.get($s,[]).concat(t).map((function(e){return e.providers})),o=[],i.forEach((function(e){return e&&o.push.apply(o,_toConsumableArray(e))})),o);if(0===a.length)return Promise.resolve(r);var s=function(){var e=U.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=oo.create({providers:a}).get(s.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(co))}return t}return so.forEach((function(e,n){var i=[];e.templateUrl&&i.push(r(e.templateUrl).then((function(t){e.template=t})));var o=e.styleUrls,a=e.styles||(e.styles=[]),s=e.styles.length;o&&o.forEach((function(t,n){a.push(""),i.push(r(t).then((function(r){a[s+n]=r,o.splice(o.indexOf(t),1),0==o.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(i).then((function(){return function(e){uo.delete(e)}(n)}));t.push(u)})),so=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},pu=new Z("AllowMultipleToken"),yu=function e(t,n){_classCallCheck(this,e),this.name=t,this.token=n};function gu(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),i=new Z(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],o=mu();if(!o||o.injector.get(pu,!1))if(e)e(n.concat(t).concat({provide:i,useValue:!0}));else{var a=n.concat(t).concat({provide:i,useValue:!0},{provide:Gi,useValue:"platform"});!function(e){if(fu&&!fu.destroyed&&!fu.injector.get(pu,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");fu=e.get(bu);var t=e.get(Vs,null);t&&t.forEach((function(e){return e()}))}(oo.create({providers:a,name:r}))}return function(e){var t=mu();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(i)}}function mu(){return fu&&!fu.destroyed?fu:null}var bu=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,i=this,o=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new uu:("zone.js"===n?void 0:n)||new tu({enableLongStackTrace:mn(),shouldCoalesceEventChangeDetection:r})),a=[{provide:tu,useValue:o}];return o.run((function(){var t=oo.create({providers:a,parent:i.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(en,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return wu(i._modules,n)})),o.runOutsideAngular((function(){return o.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var o=((a=n.injector.get(Ns)).runInitializers(),a.donePromise.then((function(){return cs(n.injector.get(zs,"en-US")||"en-US"),i._moduleDoBootstrap(n),n})));return No(o)?o.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):o}catch(s){throw t.runOutsideAngular((function(){return e.handleError(s)})),s}var a}(r,o)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=_u({},n);return vu(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(ku);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(T(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(ne(oo))},e.\u0275prov=m({token:e,factory:e.\u0275fac}),e}();function _u(e,t){return Array.isArray(t)?t.reduce(_u,e):Object.assign(Object.assign({},e),t)}var Cu,ku=((Cu=function(){function e(t,n,r,i,l,h){var f=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=i,this._componentFactoryResolver=l,this._initStatus=h,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=mn(),this._zone.onMicrotaskEmpty.subscribe({next:function(){f._zone.run((function(){f.tick()}))}});var d=new o.a((function(e){f._stable=f._zone.isStable&&!f._zone.hasPendingMacrotasks&&!f._zone.hasPendingMicrotasks,f._zone.runOutsideAngular((function(){e.next(f._stable),e.complete()}))})),v=new o.a((function(e){var t;f._zone.runOutsideAngular((function(){t=f._zone.onStable.subscribe((function(){tu.assertNotInAngularZone(),eu((function(){f._stable||f._zone.hasPendingMacrotasks||f._zone.hasPendingMicrotasks||(f._stable=!0,e.next(!0))}))}))}));var n=f._zone.onUnstable.subscribe((function(){tu.assertInAngularZone(),f._stable&&(f._stable=!1,f._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=Object(a.a)(d,v.pipe((function(e){return Object(u.a)()(Object(s.a)(c)(e))})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof ma?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var i=n.isBoundToModule?void 0:this._injector.get(ae),o=n.create(oo.NULL,[],t||n.selector,i);o.onDestroy((function(){r._unloadComponent(o)}));var a=o.injector.get(cu,null);return a&&o.injector.get(lu).registerApplication(o.location.nativeElement,a),this._loadComponent(o),mn()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var i,o=this._views[Symbol.iterator]();!(t=(i=o.next()).done);t=!0)i.value.detectChanges()}catch(h){n=!0,r=h}finally{try{t||null==o.return||o.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var a=!0,s=!1,u=void 0;try{for(var c,l=this._views[Symbol.iterator]();!(a=(c=l.next()).done);a=!0)c.value.checkNoChanges()}catch(h){s=!0,u=h}finally{try{a||null==l.return||l.return()}finally{if(s)throw u}}}}catch(f){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(f)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;wu(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Fs,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),wu(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Cu)(ne(tu),ne(Hs),ne(oo),ne(en),ne(_a),ne(Ns))},Cu.\u0275prov=m({token:Cu,factory:Cu.\u0275fac}),Cu);function wu(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Ou=function e(){_classCallCheck(this,e)},Su=function e(){_classCallCheck(this,e)},Eu={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},xu=function(){var e=function(){function e(t,n){_classCallCheck(this,e),this._compiler=t,this._config=n||Eu}return _createClass(e,[{key:"load",value:function(e){return this.loadAndCompile(e)}},{key:"loadAndCompile",value:function(e){var t=this,r=_slicedToArray(e.split("#"),2),i=r[0],o=r[1];return void 0===o&&(o="default"),n("zn8P")(i).then((function(e){return e[o]})).then((function(e){return Tu(e,i,o)})).then((function(e){return t._compiler.compileModuleAsync(e)}))}},{key:"loadFactory",value:function(e){var t=_slicedToArray(e.split("#"),2),r=t[0],i=t[1],o="NgFactory";return void 0===i&&(i="default",o=""),n("zn8P")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then((function(e){return e[i+o]})).then((function(e){return Tu(e,r,i)}))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(ne(Xs),ne(Su,8))},e.\u0275prov=m({token:e,factory:e.\u0275fac}),e}();function Tu(e,t,n){if(!e)throw new Error("Cannot find '".concat(n,"' in '").concat(t,"'"));return e}var Pu=function(e){return null},Au=gu(null,"core",[{provide:Us,useValue:"unknown"},{provide:bu,deps:[oo]},{provide:lu,deps:[]},{provide:Hs,deps:[]}]),ju=[{provide:ku,useClass:ku,deps:[tu,Hs,oo,en,_a,Ns]},{provide:Xa,deps:[tu],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Ns,useClass:Ns,deps:[[new f,Is]]},{provide:Xs,useClass:Xs,deps:[]},Ds,{provide:Fa,useFactory:function(){return qa},deps:[]},{provide:Ha,useFactory:function(){return Ba},deps:[]},{provide:zs,useFactory:function(e){return cs(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new h(zs),new f,new v]]},{provide:qs,useValue:"USD"}],Ru=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=we({type:e}),e.\u0275inj=b({factory:function(t){return new(t||e)(ne(ku))},providers:ju}),e}()},gRHU:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n("2fFW"),i=n("NJ4a"),o={closed:!0,next:function(e){},error:function(e){if(r.a.useDeprecatedSynchronousErrorHandling)throw e;Object(i.a)(e)},complete:function(){}}},hO0c:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n("fXoL"),i=n("DZdm"),o=function(){var e=function(){function e(t){_classCallCheck(this,e),this.datasource=t}return _createClass(e,[{key:"authenticate",value:function(e,t){return this.datasource.authenticate(e,t)}},{key:"clear",value:function(){this.datasource.auth_token=null}},{key:"authenticated",get:function(){return null!=this.datasource.auth_token}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Qb(i.a))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}()},"hf/X":function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n("fXoL"),i=n("DZdm"),o=function(){var e=function(){function e(t){_classCallCheck(this,e),this.dataSource=t,this.orders=[],this.loaded=!1}return _createClass(e,[{key:"loadOrders",value:function(){var e=this;this.loaded=!0,this.dataSource.getOrders().subscribe((function(t){return e.orders=t}))}},{key:"getOrders",value:function(){return this.loaded||this.loadOrders(),this.orders}},{key:"saveOrder",value:function(e){return this.dataSource.saveOrder(e)}},{key:"updateOrder",value:function(e){var t=this;this.dataSource.updateOrder(e).subscribe((function(e){t.orders.splice(t.orders.findIndex((function(t){return t.id==e.id})),1,e)}))}},{key:"deleteOrder",value:function(e){var t=this;this.dataSource.deleteOrder(e).subscribe((function(n){t.orders.splice(t.orders.findIndex((function(t){return e==t.id})),1)}))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Qb(i.a))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}()},jU2X:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n("fXoL"),i=n("DZdm"),o=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.dataSource=t,this.products=[],this.categories=[],t.getProducts().subscribe((function(e){n.products=e,n.categories=e.map((function(e){return e.category})).filter((function(e,t,n){return n.indexOf(e)==t})).sort()}))}return _createClass(e,[{key:"getProducts",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return this.products.filter((function(t){return null==e||e==t.category}))}},{key:"getProduct",value:function(e){return this.products.find((function(t){return t.id==e}))}},{key:"getCategories",value:function(){return this.categories}},{key:"saveProduct",value:function(e){var t=this;null==e.id||0==e.id?this.dataSource.saveProduct(e).subscribe((function(e){return t.products.push(e)})):this.dataSource.updateProduct(e).subscribe((function(n){t.products.splice(t.products.findIndex((function(t){return t.id==e.id})),1,e)}))}},{key:"deleteProduct",value:function(e){var t=this;this.dataSource.deleteProduct(e).subscribe((function(n){t.products.splice(t.products.findIndex((function(t){return t.id==e})),1)}))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Qb(i.a))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}()},jZKg:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n("HDdC"),i=n("quSY");function o(e,t){return new r.a((function(n){var r=new i.a,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}},kJWO:function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var r="function"==typeof Symbol&&Symbol.observable||"@@observable"},l7GE:function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var r=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"notifyNext",value:function(e,t,n,r,i){this.destination.next(t)}},{key:"notifyError",value:function(e,t){this.destination.error(e)}},{key:"notifyComplete",value:function(e){this.destination.complete()}}]),t}(n("7o/Q").a)},lJxs:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var r=n("7o/Q");function i(e,t){return function(n){if("function"!=typeof e)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new o(e,t))}}var o=function(){function e(t,n){_classCallCheck(this,e),this.project=t,this.thisArg=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new a(e,this.project,this.thisArg))}}]),e}(),a=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,i.count=0,i.thisArg=r||_assertThisInitialized(i),i}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){var t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}]),t}(r.a)},mCNh:function(e,t,n){"use strict";n.d(t,"a",(function(){return i})),n.d(t,"b",(function(){return o}));var r=n("KqfI");function i(){for(var e=arguments.length,t=new Array(e),n=0;n0&&void 0!==arguments[0]&&arguments[0],t=this._platformLocation.pathname+g(this._platformLocation.search),n=this._platformLocation.hash;return n&&e?"".concat(t).concat(n):t}},{key:"pushState",value:function(e,t,n,r){var i=this.prepareExternalUrl(n+g(r));this._platformLocation.pushState(e,t,i)}},{key:"replaceState",value:function(e,t,n,r){var i=this.prepareExternalUrl(n+g(r));this._platformLocation.replaceState(e,t,i)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}}]),t}(m);return e.\u0275fac=function(t){return new(t||e)(r.Qb(c),r.Qb(_,8))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}(),k=function(){var e=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return _inherits(t,e),_createClass(t,[{key:"onPopState",value:function(e){this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e)}},{key:"getBaseHref",value:function(){return this._baseHref}},{key:"path",value:function(){arguments.length>0&&void 0!==arguments[0]&&arguments[0];var e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}},{key:"prepareExternalUrl",value:function(e){var t=p(this._baseHref,e);return t.length>0?"#"+t:t}},{key:"pushState",value:function(e,t,n,r){var i=this.prepareExternalUrl(n+g(r));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.pushState(e,t,i)}},{key:"replaceState",value:function(e,t,n,r){var i=this.prepareExternalUrl(n+g(r));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.replaceState(e,t,i)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}}]),t}(m);return e.\u0275fac=function(t){return new(t||e)(r.Qb(c),r.Qb(_,8))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}(),w=function(){var e=function(){function e(t,n){var i=this;_classCallCheck(this,e),this._subject=new r.n,this._urlChangeListeners=[],this._platformStrategy=t;var o=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=y(S(o)),this._platformStrategy.onPopState((function(e){i._subject.emit({url:i.path(!0),pop:!0,state:e.state,type:e.type})}))}return _createClass(e,[{key:"path",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.normalize(this._platformStrategy.path(e))}},{key:"getState",value:function(){return this._platformLocation.getState()}},{key:"isCurrentPathEqualTo",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this.path()==this.normalize(e+g(t))}},{key:"normalize",value:function(t){return e.stripTrailingSlash(function(e,t){return e&&t.startsWith(e)?t.substring(e.length):t}(this._baseHref,S(t)))}},{key:"prepareExternalUrl",value:function(e){return e&&"/"!==e[0]&&(e="/"+e),this._platformStrategy.prepareExternalUrl(e)}},{key:"go",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.pushState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+g(t)),n)}},{key:"replaceState",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.replaceState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+g(t)),n)}},{key:"forward",value:function(){this._platformStrategy.forward()}},{key:"back",value:function(){this._platformStrategy.back()}},{key:"onUrlChange",value:function(e){var t=this;this._urlChangeListeners.push(e),this.subscribe((function(e){t._notifyUrlChangeListeners(e.url,e.state)}))}},{key:"_notifyUrlChangeListeners",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;this._urlChangeListeners.forEach((function(n){return n(e,t)}))}},{key:"subscribe",value:function(e,t,n){return this._subject.subscribe({next:e,error:t,complete:n})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Qb(m),r.Qb(c))},e.normalizeQueryParams=g,e.joinWithSlash=p,e.stripTrailingSlash=y,e.\u0275prov=Object(r.Fb)({factory:O,token:e,providedIn:"root"}),e}();function O(){return new w(Object(r.Qb)(m),Object(r.Qb)(c))}function S(e){return e.replace(/\/index.html$/,"")}var E={ADP:[void 0,void 0,0],AFN:[void 0,void 0,0],ALL:[void 0,void 0,0],AMD:[void 0,void 0,2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"\u09f3"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,"\u0440.",2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN\xa5","\xa5"],COP:[void 0,"$",2],CRC:[void 0,"\u20a1",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"K\u010d",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E\xa3"],ESP:[void 0,"\u20a7",0],EUR:["\u20ac"],FJD:[void 0,"$"],FKP:[void 0,"\xa3"],GBP:["\xa3"],GEL:[void 0,"\u20be"],GIP:[void 0,"\xa3"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["\u20aa"],INR:["\u20b9"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["\xa5",void 0,0],KHR:[void 0,"\u17db"],KMF:[void 0,"CF",0],KPW:[void 0,"\u20a9",0],KRW:["\u20a9",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"\u20b8"],LAK:[void 0,"\u20ad",0],LBP:[void 0,"L\xa3",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"\u20ae",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"\u20a6"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:[void 0,"\u20b1"],PKR:[void 0,"Rs",2],PLN:[void 0,"z\u0142"],PYG:[void 0,"\u20b2",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"\u20bd"],RUR:[void 0,"\u0440."],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"\xa3"],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"\xa3"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"\xa3",0],THB:[void 0,"\u0e3f"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"\u20ba"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"\u20b4"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["\u20ab",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["CFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["\xa4"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]},x=function(){var e={Decimal:0,Percent:1,Currency:2,Scientific:3};return e[e.Decimal]="Decimal",e[e.Percent]="Percent",e[e.Currency]="Currency",e[e.Scientific]="Scientific",e}(),T=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),P=function(){var e={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};return e[e.Decimal]="Decimal",e[e.Group]="Group",e[e.List]="List",e[e.PercentSign]="PercentSign",e[e.PlusSign]="PlusSign",e[e.MinusSign]="MinusSign",e[e.Exponential]="Exponential",e[e.SuperscriptingExponent]="SuperscriptingExponent",e[e.PerMille]="PerMille",e[e.Infinity]="Infinity",e[e.NaN]="NaN",e[e.TimeSeparator]="TimeSeparator",e[e.CurrencyDecimal]="CurrencyDecimal",e[e.CurrencyGroup]="CurrencyGroup",e}();function A(e,t){var n=Object(r.ib)(e),i=n[r.Y.NumberSymbols][t];if(void 0===i){if(t===P.CurrencyDecimal)return n[r.Y.NumberSymbols][P.Decimal];if(t===P.CurrencyGroup)return n[r.Y.NumberSymbols][P.Group]}return i}var j=r.lb,R=/^(\d+)?\.((\d+)(-(\d+))?)?$/;function I(e){var t=parseInt(e);if(isNaN(t))throw new Error("Invalid integer literal when parsing "+e);return t}var N=function e(){_classCallCheck(this,e)},M=function(){var e=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(j(t||this.locale)(e)){case T.Zero:return"zero";case T.One:return"one";case T.Two:return"two";case T.Few:return"few";case T.Many:return"many";default:return"other"}}}]),t}(N);return e.\u0275fac=function(t){return new(t||e)(r.Qb(r.u))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}();function D(e,t){t=encodeURIComponent(t);var n=!0,r=!1,i=void 0;try{for(var o,a=e.split(";")[Symbol.iterator]();!(n=(o=a.next()).done);n=!0){var s=o.value,u=s.indexOf("="),c=_slicedToArray(-1==u?[s,""]:[s.slice(0,u),s.slice(u+1)],2),l=c[0],h=c[1];if(l.trim()===t)return decodeURIComponent(h)}}catch(f){r=!0,i=f}finally{try{n||null==a.return||a.return()}finally{if(r)throw i}}return null}var L=function(){function e(t,n,r,i){_classCallCheck(this,e),this.$implicit=t,this.ngForOf=n,this.index=r,this.count=i}return _createClass(e,[{key:"first",get:function(){return 0===this.index}},{key:"last",get:function(){return this.index===this.count-1}},{key:"even",get:function(){return this.index%2==0}},{key:"odd",get:function(){return!this.even}}]),e}(),V=function(){var e=function(){function e(t,n,r){_classCallCheck(this,e),this._viewContainer=t,this._template=n,this._differs=r,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}return _createClass(e,[{key:"ngDoCheck",value:function(){if(this._ngForOfDirty){this._ngForOfDirty=!1;var e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(r){throw new Error("Cannot find a differ supporting object '".concat(e,"' of type '").concat((t=e).name||typeof t,"'. NgFor only supports binding to Iterables such as Arrays."))}}var t;if(this._differ){var n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}}},{key:"_applyChanges",value:function(e){var t=this,n=[];e.forEachOperation((function(e,r,i){if(null==e.previousIndex){var o=t._viewContainer.createEmbeddedView(t._template,new L(null,t._ngForOf,-1,-1),null===i?void 0:i),a=new U(e,o);n.push(a)}else if(null==i)t._viewContainer.remove(null===r?void 0:r);else if(null!==r){var s=t._viewContainer.get(r);t._viewContainer.move(s,i);var u=new U(e,s);n.push(u)}}));for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:"USD";_classCallCheck(this,e),this._locale=t,this._defaultCurrencyCode=n}return _createClass(e,[{key:"transform",value:function(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"symbol",o=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;if(function(e){return null==e||""===e||e!=e}(t))return null;a=a||this._locale,"boolean"==typeof i&&(console&&console.warn&&console.warn('Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".'),i=i?"symbol":"code");var s=n||this._defaultCurrencyCode;"code"!==i&&(s="symbol"===i||"symbol-narrow"===i?function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"en",i=function(e){return Object(r.ib)(e)[r.Y.Currencies]}(n)[e]||E[e]||[],o=i[1];return"narrow"===t&&"string"==typeof o?o:i[0]||e}(s,"symbol"===i?"wide":"narrow",a):i);try{return function(e,t,n,i,o){var a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"-",n={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},r=e.split(";"),i=r[0],o=r[1],a=-1!==i.indexOf(".")?i.split("."):[i.substring(0,i.lastIndexOf("0")+1),i.substring(i.lastIndexOf("0")+1)],s=a[0],u=a[1]||"";n.posPre=s.substr(0,s.indexOf("#"));for(var c=0;c6&&void 0!==arguments[6]&&arguments[6],s="",u=!1;if(isFinite(e)){var c=function(e){var t,n,r,i,o,a=Math.abs(e)+"",s=0;for((n=a.indexOf("."))>-1&&(a=a.replace(".","")),(r=a.search(/e/i))>0?(n<0&&(n=r),n+=+a.slice(r+1),a=a.substring(0,r)):n<0&&(n=a.length),r=0;"0"===a.charAt(r);r++);if(r===(o=a.length))t=[0],n=1;else{for(o--;"0"===a.charAt(o);)o--;for(n-=r,t=[],i=0;r<=o;r++,i++)t[i]=Number(a.charAt(r))}return n>22&&(t=t.splice(0,21),s=n-1,n=1),{digits:t,exponent:s,integerLen:n}}(e);a&&(c=function(e){if(0===e.digits[0])return e;var t=e.digits.length-e.integerLen;return e.exponent?e.exponent+=2:(0===t?e.digits.push(0,0):1===t&&e.digits.push(0),e.integerLen+=2),e}(c));var l=t.minInt,h=t.minFrac,f=t.maxFrac;if(o){var d=o.match(R);if(null===d)throw new Error("".concat(o," is not a valid digit info"));var v=d[1],p=d[3],y=d[5];null!=v&&(l=I(v)),null!=p&&(h=I(p)),null!=y?f=I(y):null!=p&&h>f&&(f=h)}!function(e,t,n){if(t>n)throw new Error("The minimum number of digits after fraction (".concat(t,") is higher than the maximum (").concat(n,")."));var r=e.digits,i=r.length-e.integerLen,o=Math.min(Math.max(t,i),n),a=o+e.integerLen,s=r[a];if(a>0){r.splice(Math.max(e.integerLen,a));for(var u=a;u=5)if(a-1<0){for(var l=0;l>a;l--)r.unshift(0),e.integerLen++;r.unshift(1),e.integerLen++}else r[a-1]++;for(;i=f?r.pop():h=!1),t>=10?1:0}),0);d&&(r.unshift(d),e.integerLen++)}(c,h,f);var g=c.digits,m=c.integerLen,b=c.exponent,_=[];for(u=g.every((function(e){return!e}));m0?_=g.splice(m,g.length):(_=g,g=[0]);var C=[];for(g.length>=t.lgSize&&C.unshift(g.splice(-t.lgSize,g.length).join(""));g.length>t.gSize;)C.unshift(g.splice(-t.gSize,g.length).join(""));g.length&&C.unshift(g.join("")),s=C.join(A(n,r)),_.length&&(s+=A(n,i)+_.join("")),b&&(s+=A(n,P.Exponential)+"+"+b)}else s=A(n,P.Infinity);return s=e<0&&!u?t.negPre+s+t.negSuf:t.posPre+s+t.posSuf}(e,a,t,P.CurrencyGroup,P.CurrencyDecimal,o).replace("\xa4",n).replace("\xa4","").trim()}(function(e){if("string"==typeof e&&!isNaN(Number(e)-parseFloat(e)))return Number(e);if("number"!=typeof e)throw new Error("".concat(e," is not a number"));return e}(t),a,s,n,o)}catch(u){throw function(e,t){return Error("InvalidPipeArgument: '".concat(t,"' for pipe '").concat(Object(r.ub)(e),"'"))}(e,u.message)}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Jb(r.u),r.Jb(r.k))},e.\u0275pipe=r.Ib({name:"currency",type:e,pure:!0}),e}(),B=function(){var e=function e(){_classCallCheck(this,e)};return e.\u0275mod=r.Hb({type:e}),e.\u0275inj=r.Gb({factory:function(t){return new(t||e)},providers:[{provide:N,useClass:M}]}),e}(),G="browser";function W(e){return e===G}var Z=function(){var e=function e(){_classCallCheck(this,e)};return e.\u0275prov=Object(r.Fb)({token:e,providedIn:"root",factory:function(){return new Q(Object(r.Qb)(u),window,Object(r.Qb)(r.m))}}),e}(),Q=function(){function e(t,n,r){_classCallCheck(this,e),this.document=t,this.window=n,this.errorHandler=r,this.offset=function(){return[0,0]}}return _createClass(e,[{key:"setOffset",value:function(e){this.offset=Array.isArray(e)?function(){return e}:e}},{key:"getScrollPosition",value:function(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}},{key:"scrollToPosition",value:function(e){this.supportScrollRestoration()&&this.window.scrollTo(e[0],e[1])}},{key:"scrollToAnchor",value:function(e){if(this.supportScrollRestoration()){e=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(e):e.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{var t=this.document.querySelector("#".concat(e));if(t)return void this.scrollToElement(t);var n=this.document.querySelector("[name='".concat(e,"']"));if(n)return void this.scrollToElement(n)}catch(r){this.errorHandler.handleError(r)}}}},{key:"setHistoryScrollRestoration",value:function(e){if(this.supportScrollRestoration()){var t=this.window.history;t&&t.scrollRestoration&&(t.scrollRestoration=e)}}},{key:"scrollToElement",value:function(e){var t=e.getBoundingClientRect(),n=t.left+this.window.pageXOffset,r=t.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(n-i[0],r-i[1])}},{key:"supportScrollRestoration",value:function(){try{return!!this.window&&!!this.window.scrollTo}catch(e){return!1}}}]),e}()},pLZG:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var r=n("7o/Q");function i(e,t){return function(n){return n.lift(new o(e,t))}}var o=function(){function e(t,n){_classCallCheck(this,e),this.predicate=t,this.thisArg=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new a(e,this.predicate,this.thisArg))}}]),e}(),a=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).predicate=n,i.thisArg=r,i.count=0,i}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){var t;try{t=this.predicate.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}t&&this.destination.next(e)}}]),t}(r.a)},quSY:function(e,t,n){"use strict";var r=n("DH7j"),i=n("XoHu"),o=n("n6bG"),a=function(){function e(e){return Error.call(this),this.message=e?"".concat(e.length," errors occurred during unsubscription:\n").concat(e.map((function(e,t){return"".concat(t+1,") ").concat(e.toString())})).join("\n ")):"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e}();n.d(t,"a",(function(){return c}));var s,u,c=((u=function(){function e(t){_classCallCheck(this,e),this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}return _createClass(e,[{key:"unsubscribe",value:function(){var t;if(!this.closed){var n=this._parentOrParents,s=this._unsubscribe,u=this._subscriptions;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(var c=0;c0){var r=e.slice(0,t),i=r.toLowerCase(),o=e.slice(t+1).trim();n.maybeSetNormalizedName(r,i),n.headers.has(i)?n.headers.get(i).push(o):n.headers.set(i,[o])}}))}:function(){n.headers=new Map,Object.keys(t).forEach((function(e){var r=t[e],i=e.toLowerCase();"string"==typeof r&&(r=[r]),r.length>0&&(n.headers.set(i,r),n.maybeSetNormalizedName(e,i))}))}:this.headers=new Map}return _createClass(e,[{key:"has",value:function(e){return this.init(),this.headers.has(e.toLowerCase())}},{key:"get",value:function(e){this.init();var t=this.headers.get(e.toLowerCase());return t&&t.length>0?t[0]:null}},{key:"keys",value:function(){return this.init(),Array.from(this.normalizedNames.values())}},{key:"getAll",value:function(e){return this.init(),this.headers.get(e.toLowerCase())||null}},{key:"append",value:function(e,t){return this.clone({name:e,value:t,op:"a"})}},{key:"set",value:function(e,t){return this.clone({name:e,value:t,op:"s"})}},{key:"delete",value:function(e,t){return this.clone({name:e,value:t,op:"d"})}},{key:"maybeSetNormalizedName",value:function(e,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,e)}},{key:"init",value:function(){var t=this;this.lazyInit&&(this.lazyInit instanceof e?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach((function(e){return t.applyUpdate(e)})),this.lazyUpdate=null))}},{key:"copyFrom",value:function(e){var t=this;e.init(),Array.from(e.headers.keys()).forEach((function(n){t.headers.set(n,e.headers.get(n)),t.normalizedNames.set(n,e.normalizedNames.get(n))}))}},{key:"clone",value:function(t){var n=new e;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof e?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([t]),n}},{key:"applyUpdate",value:function(e){var t=e.name.toLowerCase();switch(e.op){case"a":case"s":var n=e.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(e.name,t);var r=("a"===e.op?this.headers.get(t):void 0)||[];r.push.apply(r,_toConsumableArray(n)),this.headers.set(t,r);break;case"d":var i=e.value;if(i){var o=this.headers.get(t);if(!o)return;0===(o=o.filter((function(e){return-1===i.indexOf(e)}))).length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,o)}else this.headers.delete(t),this.normalizedNames.delete(t)}}},{key:"forEach",value:function(e){var t=this;this.init(),Array.from(this.normalizedNames.keys()).forEach((function(n){return e(t.normalizedNames.get(n),t.headers.get(n))}))}}]),e}(),d=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"encodeKey",value:function(e){return v(e)}},{key:"encodeValue",value:function(e){return v(e)}},{key:"decodeKey",value:function(e){return decodeURIComponent(e)}},{key:"decodeValue",value:function(e){return decodeURIComponent(e)}}]),e}();function v(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}var p=function(){function e(){var t,n,r,i=this,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(_classCallCheck(this,e),this.updates=null,this.cloneFrom=null,this.encoder=o.encoder||new d,o.fromString){if(o.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=(t=o.fromString,n=this.encoder,r=new Map,t.length>0&&t.split("&").forEach((function(e){var t=e.indexOf("="),i=_slicedToArray(-1==t?[n.decodeKey(e),""]:[n.decodeKey(e.slice(0,t)),n.decodeValue(e.slice(t+1))],2),o=i[0],a=i[1],s=r.get(o)||[];s.push(a),r.set(o,s)})),r)}else o.fromObject?(this.map=new Map,Object.keys(o.fromObject).forEach((function(e){var t=o.fromObject[e];i.map.set(e,Array.isArray(t)?t:[t])}))):this.map=null}return _createClass(e,[{key:"has",value:function(e){return this.init(),this.map.has(e)}},{key:"get",value:function(e){this.init();var t=this.map.get(e);return t?t[0]:null}},{key:"getAll",value:function(e){return this.init(),this.map.get(e)||null}},{key:"keys",value:function(){return this.init(),Array.from(this.map.keys())}},{key:"append",value:function(e,t){return this.clone({param:e,value:t,op:"a"})}},{key:"set",value:function(e,t){return this.clone({param:e,value:t,op:"s"})}},{key:"delete",value:function(e,t){return this.clone({param:e,value:t,op:"d"})}},{key:"toString",value:function(){var e=this;return this.init(),this.keys().map((function(t){var n=e.encoder.encodeKey(t);return e.map.get(t).map((function(t){return n+"="+e.encoder.encodeValue(t)})).join("&")})).filter((function(e){return""!==e})).join("&")}},{key:"clone",value:function(t){var n=new e({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat([t]),n}},{key:"init",value:function(){var e=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach((function(t){return e.map.set(t,e.cloneFrom.map.get(t))})),this.updates.forEach((function(t){switch(t.op){case"a":case"s":var n=("a"===t.op?e.map.get(t.param):void 0)||[];n.push(t.value),e.map.set(t.param,n);break;case"d":if(void 0===t.value){e.map.delete(t.param);break}var r=e.map.get(t.param)||[],i=r.indexOf(t.value);-1!==i&&r.splice(i,1),r.length>0?e.map.set(t.param,r):e.map.delete(t.param)}})),this.cloneFrom=this.updates=null)}}]),e}();function y(e){return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer}function g(e){return"undefined"!=typeof Blob&&e instanceof Blob}function m(e){return"undefined"!=typeof FormData&&e instanceof FormData}var b=function(){function e(t,n,r,i){var o;if(_classCallCheck(this,e),this.url=n,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||i?(this.body=void 0!==r?r:null,o=i):o=r,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.params&&(this.params=o.params)),this.headers||(this.headers=new f),this.params){var a=this.params.toString();if(0===a.length)this.urlWithParams=n;else{var s=n.indexOf("?");this.urlWithParams=n+(-1===s?"?":s0&&void 0!==arguments[0]?arguments[0]:{},n=t.method||this.method,r=t.url||this.url,i=t.responseType||this.responseType,o=void 0!==t.body?t.body:this.body,a=void 0!==t.withCredentials?t.withCredentials:this.withCredentials,s=void 0!==t.reportProgress?t.reportProgress:this.reportProgress,u=t.headers||this.headers,c=t.params||this.params;return void 0!==t.setHeaders&&(u=Object.keys(t.setHeaders).reduce((function(e,n){return e.set(n,t.setHeaders[n])}),u)),t.setParams&&(c=Object.keys(t.setParams).reduce((function(e,n){return e.set(n,t.setParams[n])}),c)),new e(n,r,o,{params:c,headers:u,reportProgress:s,responseType:i,withCredentials:a})}}]),e}(),_=function(){var e={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return e[e.Sent]="Sent",e[e.UploadProgress]="UploadProgress",e[e.ResponseHeader]="ResponseHeader",e[e.DownloadProgress]="DownloadProgress",e[e.Response]="Response",e[e.User]="User",e}(),C=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"OK";_classCallCheck(this,e),this.headers=t.headers||new f,this.status=void 0!==t.status?t.status:n,this.statusText=t.statusText||r,this.url=t.url||null,this.ok=this.status>=200&&this.status<300},k=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,n))).type=_.ResponseHeader,e}return _inherits(t,e),_createClass(t,[{key:"clone",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new t({headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}]),t}(C),w=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,n))).type=_.Response,e.body=void 0!==n.body?n.body:null,e}return _inherits(t,e),_createClass(t,[{key:"clone",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new t({body:void 0!==e.body?e.body:this.body,headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}]),t}(C),O=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,0,"Unknown Error"))).name="HttpErrorResponse",n.ok=!1,n.message=n.status>=200&&n.status<300?"Http failure during parsing for ".concat(e.url||"(unknown url)"):"Http failure response for ".concat(e.url||"(unknown url)",": ").concat(e.status," ").concat(e.statusText),n.error=e.error||null,n}return _inherits(t,e),t}(C);function S(e,t){return{body:t,headers:e.headers,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials}}var E=function(){var e=function(){function e(t){_classCallCheck(this,e),this.handler=t}return _createClass(e,[{key:"request",value:function(e,t){var n,r=this,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e instanceof b)n=e;else{var c=void 0;c=o.headers instanceof f?o.headers:new f(o.headers);var l=void 0;o.params&&(l=o.params instanceof p?o.params:new p({fromObject:o.params})),n=new b(e,t,void 0!==o.body?o.body:null,{headers:c,params:l,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials})}var h=Object(i.a)(n).pipe(Object(a.a)((function(e){return r.handler.handle(e)})));if(e instanceof b||"events"===o.observe)return h;var d=h.pipe(Object(s.a)((function(e){return e instanceof w})));switch(o.observe||"body"){case"body":switch(n.responseType){case"arraybuffer":return d.pipe(Object(u.a)((function(e){if(null!==e.body&&!(e.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return e.body})));case"blob":return d.pipe(Object(u.a)((function(e){if(null!==e.body&&!(e.body instanceof Blob))throw new Error("Response is not a Blob.");return e.body})));case"text":return d.pipe(Object(u.a)((function(e){if(null!==e.body&&"string"!=typeof e.body)throw new Error("Response is not a string.");return e.body})));case"json":default:return d.pipe(Object(u.a)((function(e){return e.body})))}case"response":return d;default:throw new Error("Unreachable: unhandled observe type ".concat(o.observe,"}"))}}},{key:"delete",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("DELETE",e,t)}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("GET",e,t)}},{key:"head",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("HEAD",e,t)}},{key:"jsonp",value:function(e,t){return this.request("JSONP",e,{params:(new p).append(t,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}},{key:"options",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("OPTIONS",e,t)}},{key:"patch",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PATCH",e,S(n,t))}},{key:"post",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("POST",e,S(n,t))}},{key:"put",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PUT",e,S(n,t))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Qb(l))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}(),x=function(){function e(t,n){_classCallCheck(this,e),this.next=t,this.interceptor=n}return _createClass(e,[{key:"handle",value:function(e){return this.interceptor.intercept(e,this.next)}}]),e}(),T=new r.q("HTTP_INTERCEPTORS"),P=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"intercept",value:function(e,t){return t.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}(),A=/^\)\]\}',?\n/,j=function e(){_classCallCheck(this,e)},R=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"build",value:function(){return new XMLHttpRequest}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}(),I=function(){var e=function(){function e(t){_classCallCheck(this,e),this.xhrFactory=t}return _createClass(e,[{key:"handle",value:function(e){var t=this;if("JSONP"===e.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new o.a((function(n){var r=t.xhrFactory.build();if(r.open(e.method,e.urlWithParams),e.withCredentials&&(r.withCredentials=!0),e.headers.forEach((function(e,t){return r.setRequestHeader(e,t.join(","))})),e.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){var i=e.detectContentTypeHeader();null!==i&&r.setRequestHeader("Content-Type",i)}if(e.responseType){var o=e.responseType.toLowerCase();r.responseType="json"!==o?o:"text"}var a=e.serializeBody(),s=null,u=function(){if(null!==s)return s;var t=1223===r.status?204:r.status,n=r.statusText||"OK",i=new f(r.getAllResponseHeaders()),o=function(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(r)||e.url;return s=new k({headers:i,status:t,statusText:n,url:o})},c=function(){var t=u(),i=t.headers,o=t.status,a=t.statusText,s=t.url,c=null;204!==o&&(c=void 0===r.response?r.responseText:r.response),0===o&&(o=c?200:0);var l=o>=200&&o<300;if("json"===e.responseType&&"string"==typeof c){var h=c;c=c.replace(A,"");try{c=""!==c?JSON.parse(c):null}catch(f){c=h,l&&(l=!1,c={error:f,text:c})}}l?(n.next(new w({body:c,headers:i,status:o,statusText:a,url:s||void 0})),n.complete()):n.error(new O({error:c,headers:i,status:o,statusText:a,url:s||void 0}))},l=function(e){var t=u().url,i=new O({error:e,status:r.status||0,statusText:r.statusText||"Unknown Error",url:t||void 0});n.error(i)},h=!1,d=function(t){h||(n.next(u()),h=!0);var i={type:_.DownloadProgress,loaded:t.loaded};t.lengthComputable&&(i.total=t.total),"text"===e.responseType&&r.responseText&&(i.partialText=r.responseText),n.next(i)},v=function(e){var t={type:_.UploadProgress,loaded:e.loaded};e.lengthComputable&&(t.total=e.total),n.next(t)};return r.addEventListener("load",c),r.addEventListener("error",l),e.reportProgress&&(r.addEventListener("progress",d),null!==a&&r.upload&&r.upload.addEventListener("progress",v)),r.send(a),n.next({type:_.Sent}),function(){r.removeEventListener("error",l),r.removeEventListener("load",c),e.reportProgress&&(r.removeEventListener("progress",d),null!==a&&r.upload&&r.upload.removeEventListener("progress",v)),r.abort()}}))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Qb(j))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}(),N=new r.q("XSRF_COOKIE_NAME"),M=new r.q("XSRF_HEADER_NAME"),D=function e(){_classCallCheck(this,e)},L=function(){var e=function(){function e(t,n,r){_classCallCheck(this,e),this.doc=t,this.platform=n,this.cookieName=r,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return _createClass(e,[{key:"getToken",value:function(){if("server"===this.platform)return null;var e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=Object(c.r)(e,this.cookieName),this.lastCookieString=e),this.lastToken}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Qb(c.d),r.Qb(r.B),r.Qb(N))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}(),V=function(){var e=function(){function e(t,n){_classCallCheck(this,e),this.tokenService=t,this.headerName=n}return _createClass(e,[{key:"intercept",value:function(e,t){var n=e.url.toLowerCase();if("GET"===e.method||"HEAD"===e.method||n.startsWith("http://")||n.startsWith("https://"))return t.handle(e);var r=this.tokenService.getToken();return null===r||e.headers.has(this.headerName)||(e=e.clone({headers:e.headers.set(this.headerName,r)})),t.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Qb(D),r.Qb(M))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}(),U=function(){var e=function(){function e(t,n){_classCallCheck(this,e),this.backend=t,this.injector=n,this.chain=null}return _createClass(e,[{key:"handle",value:function(e){if(null===this.chain){var t=this.injector.get(T,[]);this.chain=t.reduceRight((function(e,t){return new x(e,t)}),this.backend)}return this.chain.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(r.Qb(h),r.Qb(r.r))},e.\u0275prov=r.Fb({token:e,factory:e.\u0275fac}),e}(),F=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"disable",value:function(){return{ngModule:e,providers:[{provide:V,useClass:P}]}}},{key:"withOptions",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{ngModule:e,providers:[t.cookieName?{provide:N,useValue:t.cookieName}:[],t.headerName?{provide:M,useValue:t.headerName}:[]]}}}]),e}();return e.\u0275mod=r.Hb({type:e}),e.\u0275inj=r.Gb({factory:function(t){return new(t||e)},providers:[V,{provide:T,useExisting:V,multi:!0},{provide:D,useClass:L},{provide:N,useValue:"XSRF-TOKEN"},{provide:M,useValue:"X-XSRF-TOKEN"}]}),e}(),H=function(){var e=function e(){_classCallCheck(this,e)};return e.\u0275mod=r.Hb({type:e}),e.\u0275inj=r.Gb({factory:function(t){return new(t||e)},providers:[E,{provide:l,useClass:U},I,{provide:h,useExisting:I},R,{provide:j,useExisting:R}],imports:[[F.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),e}()},tyNb:function(e,t,n){"use strict";var r=n("ofXK"),i=n("fXoL"),o=n("LRne"),a=n("Cfvw"),s=n("XNiG"),u=n("9ppp"),c=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._value=e,n}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){var n=_get(_getPrototypeOf(t.prototype),"_subscribe",this).call(this,e);return n&&!n.closed&&e.next(this._value),n}},{key:"getValue",value:function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new u.a;return this._value}},{key:"next",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,this._value=e)}},{key:"value",get:function(){return this.getValue()}}]),t}(s.a),l=n("HDdC"),h=function(){function e(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}return e.prototype=Object.create(Error.prototype),e}(),f=n("z+Ro"),d=n("DH7j"),v=n("l7GE"),p=n("ZUHj"),y=n("yCtX"),g={},m=function(){function e(t){_classCallCheck(this,e),this.resultSelector=t}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new b(e,this.resultSelector))}}]),e}(),b=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).resultSelector=n,r.active=0,r.values=[],r.observables=[],r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.values.push(g),this.observables.push(e)}},{key:"_complete",value:function(){var e=this.observables,t=e.length;if(0===t)this.destination.complete();else{this.active=t,this.toRespond=t;for(var n=0;n0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,i=0;i0&&void 0!==arguments[0]?arguments[0]:I;return function(t){return t.lift(new j(e))}}var j=function(){function e(t){_classCallCheck(this,e),this.errorFactory=t}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new R(e,this.errorFactory))}}]),e}(),R=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).errorFactory=n,r.hasValue=!1,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.hasValue=!0,this.destination.next(e)}},{key:"_complete",value:function(){if(this.hasValue)return this.destination.complete();var e;try{e=this.errorFactory()}catch(t){e=t}this.destination.error(e)}}]),t}(S.a);function I(){return new h}function N(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return function(t){return t.lift(new M(e))}}var M=function(){function e(t){_classCallCheck(this,e),this.defaultValue=t}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new D(e,this.defaultValue))}}]),e}(),D=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).defaultValue=n,r.isEmpty=!0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.isEmpty=!1,this.destination.next(e)}},{key:"_complete",value:function(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}]),t}(S.a),L=n("SpAZ");function V(e,t){var n=arguments.length>=2;return function(r){return r.pipe(e?Object(O.a)((function(t,n){return e(t,n,r)})):L.a,x(1),n?N(t):A((function(){return new h})))}}var U=n("51Dv");function F(e){return function(t){var n=new H(e),r=t.lift(n);return n.caught=r}}var H=function(){function e(t){_classCallCheck(this,e),this.selector=t}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new z(e,this.selector,this.caught))}}]),e}(),z=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).selector=n,i.caught=r,i}return _inherits(t,e),_createClass(t,[{key:"error",value:function(e){if(!this.isStopped){var n;try{n=this.selector(e,this.caught)}catch(o){return void _get(_getPrototypeOf(t.prototype),"error",this).call(this,o)}this._unsubscribeAndRecycle();var r=new U.a(this,void 0,void 0);this.add(r);var i=Object(p.a)(this,n,void 0,void 0,r);i!==r&&this.add(i)}}}]),t}(v.a),q=n("IzEk");function B(e,t){var n=arguments.length>=2;return function(r){return r.pipe(e?Object(O.a)((function(t,n){return e(t,n,r)})):L.a,Object(q.a)(1),n?N(t):A((function(){return new h})))}}var G=n("5+tZ"),W=function(){function e(t,n,r){_classCallCheck(this,e),this.predicate=t,this.thisArg=n,this.source=r}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new Z(e,this.predicate,this.thisArg,this.source))}}]),e}(),Z=function(e){function t(e,n,r,i){var o;return _classCallCheck(this,t),(o=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).predicate=n,o.thisArg=r,o.source=i,o.index=0,o.thisArg=r||_assertThisInitialized(o),o}return _inherits(t,e),_createClass(t,[{key:"notifyComplete",value:function(e){this.destination.next(e),this.destination.complete()}},{key:"_next",value:function(e){var t=!1;try{t=this.predicate.call(this.thisArg,e,this.index++,this.source)}catch(n){return void this.destination.error(n)}t||this.notifyComplete(!1)}},{key:"_complete",value:function(){this.notifyComplete(!0)}}]),t}(S.a),Q=n("eIep"),J=n("GyhO");function K(e,t){var n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new X(e,t,n))}}var X=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];_classCallCheck(this,e),this.accumulator=t,this.seed=n,this.hasSeed=r}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new $(e,this.accumulator,this.seed,this.hasSeed))}}]),e}(),$=function(e){function t(e,n,r,i){var o;return _classCallCheck(this,t),(o=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).accumulator=n,o._seed=r,o.hasSeed=i,o.index=0,o}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){if(this.hasSeed)return this._tryNext(e);this.seed=e,this.destination.next(e)}},{key:"_tryNext",value:function(e){var t,n=this.index++;try{t=this.accumulator(this.seed,e,n)}catch(r){this.destination.error(r)}this.seed=t,this.destination.next(t)}},{key:"seed",get:function(){return this._seed},set:function(e){this.hasSeed=!0,this._seed=e}}]),t}(S.a),Y=n("bOdf"),ee=n("mCNh"),te=n("vkgz"),ne=n("quSY"),re=function(){function e(t){_classCallCheck(this,e),this.callback=t}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new ie(e,this.callback))}}]),e}(),ie=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).add(new ne.a(n)),r}return _inherits(t,e),t}(S.a),oe=n("bHdf");n.d(t,"a",(function(){return vt})),n.d(t,"b",(function(){return Sn})),n.d(t,"c",(function(){return En})),n.d(t,"d",(function(){return In})),n.d(t,"e",(function(){return Zn})),n.d(t,"f",(function(){return Dn}));var ae,se=function e(t,n){_classCallCheck(this,e),this.id=t,this.url=n},ue=function(e){function t(e,n){var r,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"imperative",o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).navigationTrigger=i,r.restoredState=o,r}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return"NavigationStart(id: ".concat(this.id,", url: '").concat(this.url,"')")}}]),t}(se),ce=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).urlAfterRedirects=r,i}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return"NavigationEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"')")}}]),t}(se),le=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).reason=r,i}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return"NavigationCancel(id: ".concat(this.id,", url: '").concat(this.url,"')")}}]),t}(se),he=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).error=r,i}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return"NavigationError(id: ".concat(this.id,", url: '").concat(this.url,"', error: ").concat(this.error,")")}}]),t}(se),fe=function(e){function t(e,n,r,i){var o;return _classCallCheck(this,t),(o=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).urlAfterRedirects=r,o.state=i,o}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return"RoutesRecognized(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),t}(se),de=function(e){function t(e,n,r,i){var o;return _classCallCheck(this,t),(o=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).urlAfterRedirects=r,o.state=i,o}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return"GuardsCheckStart(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),t}(se),ve=function(e){function t(e,n,r,i,o){var a;return _classCallCheck(this,t),(a=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).urlAfterRedirects=r,a.state=i,a.shouldActivate=o,a}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return"GuardsCheckEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,", shouldActivate: ").concat(this.shouldActivate,")")}}]),t}(se),pe=function(e){function t(e,n,r,i){var o;return _classCallCheck(this,t),(o=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).urlAfterRedirects=r,o.state=i,o}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return"ResolveStart(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),t}(se),ye=function(e){function t(e,n,r,i){var o;return _classCallCheck(this,t),(o=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).urlAfterRedirects=r,o.state=i,o}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return"ResolveEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),t}(se),ge=function(){function e(t){_classCallCheck(this,e),this.route=t}return _createClass(e,[{key:"toString",value:function(){return"RouteConfigLoadStart(path: ".concat(this.route.path,")")}}]),e}(),me=function(){function e(t){_classCallCheck(this,e),this.route=t}return _createClass(e,[{key:"toString",value:function(){return"RouteConfigLoadEnd(path: ".concat(this.route.path,")")}}]),e}(),be=function(){function e(t){_classCallCheck(this,e),this.snapshot=t}return _createClass(e,[{key:"toString",value:function(){return"ChildActivationStart(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),e}(),_e=function(){function e(t){_classCallCheck(this,e),this.snapshot=t}return _createClass(e,[{key:"toString",value:function(){return"ChildActivationEnd(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),e}(),Ce=function(){function e(t){_classCallCheck(this,e),this.snapshot=t}return _createClass(e,[{key:"toString",value:function(){return"ActivationStart(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),e}(),ke=function(){function e(t){_classCallCheck(this,e),this.snapshot=t}return _createClass(e,[{key:"toString",value:function(){return"ActivationEnd(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),e}(),we=function(){function e(t,n,r){_classCallCheck(this,e),this.routerEvent=t,this.position=n,this.anchor=r}return _createClass(e,[{key:"toString",value:function(){return"Scroll(anchor: '".concat(this.anchor,"', position: '").concat(this.position?"".concat(this.position[0],", ").concat(this.position[1]):null,"')")}}]),e}(),Oe=((ae=function e(){_classCallCheck(this,e)}).\u0275fac=function(e){return new(e||ae)},ae.\u0275cmp=i.Db({type:ae,selectors:[["ng-component"]],decls:1,vars:0,template:function(e,t){1&e&&i.Kb(0,"router-outlet")},directives:function(){return[Dn]},encapsulation:2}),ae),Se=function(){function e(t){_classCallCheck(this,e),this.params=t||{}}return _createClass(e,[{key:"has",value:function(e){return this.params.hasOwnProperty(e)}},{key:"get",value:function(e){if(this.has(e)){var t=this.params[e];return Array.isArray(t)?t[0]:t}return null}},{key:"getAll",value:function(e){if(this.has(e)){var t=this.params[e];return Array.isArray(t)?t:[t]}return[]}},{key:"keys",get:function(){return Object.keys(this.params)}}]),e}();function Ee(e){return new Se(e)}function xe(e){var t=Error("NavigationCancelingError: "+e);return t.ngNavigationCancelingError=!0,t}function Te(e,t,n){var r=n.path.split("/");if(r.length>e.length)return null;if("full"===n.pathMatch&&(t.hasChildren()||r.length1&&void 0!==arguments[1]?arguments[1]:"",n=0;n-1})):e===t}function De(e){return Array.prototype.concat.apply([],e)}function Le(e){return e.length>0?e[e.length-1]:null}function Ve(e,t){for(var n in e)e.hasOwnProperty(n)&&t(e[n],n)}function Ue(e){return Object(i.pb)(e)?e:Object(i.qb)(e)?Object(a.a)(Promise.resolve(e)):Object(o.a)(e)}function Fe(e,t,n){return n?function(e,t){return Ne(e,t)}(e.queryParams,t.queryParams)&&function e(t,n){if(!Be(t.segments,n.segments))return!1;if(t.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!t.children[r])return!1;if(!e(t.children[r],n.children[r]))return!1}return!0}(e.root,t.root):function(e,t){return Object.keys(t).length<=Object.keys(e).length&&Object.keys(t).every((function(n){return Me(e[n],t[n])}))}(e.queryParams,t.queryParams)&&function e(t,n){return function t(n,r,i){if(n.segments.length>i.length)return!!Be(n.segments.slice(0,i.length),i)&&!r.hasChildren();if(n.segments.length===i.length){if(!Be(n.segments,i))return!1;for(var o in r.children){if(!n.children[o])return!1;if(!e(n.children[o],r.children[o]))return!1}return!0}var a=i.slice(0,n.segments.length),s=i.slice(n.segments.length);return!!Be(n.segments,a)&&!!n.children.primary&&t(n.children.primary,r,s)}(t,n,n.segments)}(e.root,t.root)}var He=function(){function e(t,n,r){_classCallCheck(this,e),this.root=t,this.queryParams=n,this.fragment=r}return _createClass(e,[{key:"toString",value:function(){return Qe.serialize(this)}},{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=Ee(this.queryParams)),this._queryParamMap}}]),e}(),ze=function(){function e(t,n){var r=this;_classCallCheck(this,e),this.segments=t,this.children=n,this.parent=null,Ve(n,(function(e,t){return e.parent=r}))}return _createClass(e,[{key:"hasChildren",value:function(){return this.numberOfChildren>0}},{key:"toString",value:function(){return Je(this)}},{key:"numberOfChildren",get:function(){return Object.keys(this.children).length}}]),e}(),qe=function(){function e(t,n){_classCallCheck(this,e),this.path=t,this.parameters=n}return _createClass(e,[{key:"toString",value:function(){return tt(this)}},{key:"parameterMap",get:function(){return this._parameterMap||(this._parameterMap=Ee(this.parameters)),this._parameterMap}}]),e}();function Be(e,t){return e.length===t.length&&e.every((function(e,n){return e.path===t[n].path}))}function Ge(e,t){var n=[];return Ve(e.children,(function(e,r){"primary"===r&&(n=n.concat(t(e,r)))})),Ve(e.children,(function(e,r){"primary"!==r&&(n=n.concat(t(e,r)))})),n}var We=function e(){_classCallCheck(this,e)},Ze=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"parse",value:function(e){var t=new at(e);return new He(t.parseRootSegment(),t.parseQueryParams(),t.parseFragment())}},{key:"serialize",value:function(e){var t,n,r;return"".concat("/".concat(function e(t,n){if(!t.hasChildren())return Je(t);if(n){var r=t.children.primary?e(t.children.primary,!1):"",i=[];return Ve(t.children,(function(t,n){"primary"!==n&&i.push("".concat(n,":").concat(e(t,!1)))})),i.length>0?"".concat(r,"(").concat(i.join("//"),")"):r}var o=Ge(t,(function(n,r){return"primary"===r?[e(t.children.primary,!1)]:["".concat(r,":").concat(e(n,!1))]}));return"".concat(Je(t),"/(").concat(o.join("//"),")")}(e.root,!0)),(n=e.queryParams,r=Object.keys(n).map((function(e){var t=n[e];return Array.isArray(t)?t.map((function(t){return"".concat(Xe(e),"=").concat(Xe(t))})).join("&"):"".concat(Xe(e),"=").concat(Xe(t))})),r.length?"?".concat(r.join("&")):"")).concat("string"==typeof e.fragment?"#".concat((t=e.fragment,encodeURI(t))):"")}}]),e}(),Qe=new Ze;function Je(e){return e.segments.map((function(e){return tt(e)})).join("/")}function Ke(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Xe(e){return Ke(e).replace(/%3B/gi,";")}function $e(e){return Ke(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Ye(e){return decodeURIComponent(e)}function et(e){return Ye(e.replace(/\+/g,"%20"))}function tt(e){return"".concat($e(e.path)).concat((t=e.parameters,Object.keys(t).map((function(e){return";".concat($e(e),"=").concat($e(t[e]))})).join("")));var t}var nt=/^[^\/()?;=#]+/;function rt(e){var t=e.match(nt);return t?t[0]:""}var it=/^[^=?&#]+/,ot=/^[^?&#]+/,at=function(){function e(t){_classCallCheck(this,e),this.url=t,this.remaining=t}return _createClass(e,[{key:"parseRootSegment",value:function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new ze([],{}):new ze([],this.parseChildren())}},{key:"parseQueryParams",value:function(){var e={};if(this.consumeOptional("?"))do{this.parseQueryParam(e)}while(this.consumeOptional("&"));return e}},{key:"parseFragment",value:function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}},{key:"parseChildren",value:function(){if(""===this.remaining)return{};this.consumeOptional("/");var e=[];for(this.peekStartsWith("(")||e.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),e.push(this.parseSegment());var t={};this.peekStartsWith("/(")&&(this.capture("/"),t=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(e.length>0||Object.keys(t).length>0)&&(n.primary=new ze(e,t)),n}},{key:"parseSegment",value:function(){var e=rt(this.remaining);if(""===e&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '".concat(this.remaining,"'."));return this.capture(e),new qe(Ye(e),this.parseMatrixParams())}},{key:"parseMatrixParams",value:function(){for(var e={};this.consumeOptional(";");)this.parseParam(e);return e}},{key:"parseParam",value:function(e){var t=rt(this.remaining);if(t){this.capture(t);var n="";if(this.consumeOptional("=")){var r=rt(this.remaining);r&&(n=r,this.capture(n))}e[Ye(t)]=Ye(n)}}},{key:"parseQueryParam",value:function(e){var t=function(e){var t=e.match(it);return t?t[0]:""}(this.remaining);if(t){this.capture(t);var n="";if(this.consumeOptional("=")){var r=function(e){var t=e.match(ot);return t?t[0]:""}(this.remaining);r&&(n=r,this.capture(n))}var i=et(t),o=et(n);if(e.hasOwnProperty(i)){var a=e[i];Array.isArray(a)||(a=[a],e[i]=a),a.push(o)}else e[i]=o}}},{key:"parseParens",value:function(e){var t={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=rt(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error("Cannot parse url '".concat(this.url,"'"));var i=void 0;n.indexOf(":")>-1?(i=n.substr(0,n.indexOf(":")),this.capture(i),this.capture(":")):e&&(i="primary");var o=this.parseChildren();t[i]=1===Object.keys(o).length?o.primary:new ze([],o),this.consumeOptional("//")}return t}},{key:"peekStartsWith",value:function(e){return this.remaining.startsWith(e)}},{key:"consumeOptional",value:function(e){return!!this.peekStartsWith(e)&&(this.remaining=this.remaining.substring(e.length),!0)}},{key:"capture",value:function(e){if(!this.consumeOptional(e))throw new Error('Expected "'.concat(e,'".'))}}]),e}(),st=function(){function e(t){_classCallCheck(this,e),this._root=t}return _createClass(e,[{key:"parent",value:function(e){var t=this.pathFromRoot(e);return t.length>1?t[t.length-2]:null}},{key:"children",value:function(e){var t=ut(e,this._root);return t?t.children.map((function(e){return e.value})):[]}},{key:"firstChild",value:function(e){var t=ut(e,this._root);return t&&t.children.length>0?t.children[0].value:null}},{key:"siblings",value:function(e){var t=ct(e,this._root);return t.length<2?[]:t[t.length-2].children.map((function(e){return e.value})).filter((function(t){return t!==e}))}},{key:"pathFromRoot",value:function(e){return ct(e,this._root).map((function(e){return e.value}))}},{key:"root",get:function(){return this._root.value}}]),e}();function ut(e,t){if(e===t.value)return t;var n=!0,r=!1,i=void 0;try{for(var o,a=t.children[Symbol.iterator]();!(n=(o=a.next()).done);n=!0){var s=ut(e,o.value);if(s)return s}}catch(u){r=!0,i=u}finally{try{n||null==a.return||a.return()}finally{if(r)throw i}}return null}function ct(e,t){if(e===t.value)return[t];var n=!0,r=!1,i=void 0;try{for(var o,a=t.children[Symbol.iterator]();!(n=(o=a.next()).done);n=!0){var s=ct(e,o.value);if(s.length)return s.unshift(t),s}}catch(u){r=!0,i=u}finally{try{n||null==a.return||a.return()}finally{if(r)throw i}}return[]}var lt=function(){function e(t,n){_classCallCheck(this,e),this.value=t,this.children=n}return _createClass(e,[{key:"toString",value:function(){return"TreeNode(".concat(this.value,")")}}]),e}();function ht(e){var t={};return e&&e.children.forEach((function(e){return t[e.value.outlet]=e})),t}var ft=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).snapshot=n,mt(_assertThisInitialized(r),e),r}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return this.snapshot.toString()}}]),t}(st);function dt(e,t){var n=function(e,t){var n=new yt([],{},{},"",{},"primary",t,null,e.root,-1,{});return new gt("",new lt(n,[]))}(e,t),r=new c([new qe("",{})]),i=new c({}),o=new c({}),a=new c({}),s=new c(""),u=new vt(r,i,a,s,o,"primary",t,n.root);return u.snapshot=n.root,new ft(new lt(u,[]),n)}var vt=function(){function e(t,n,r,i,o,a,s,u){_classCallCheck(this,e),this.url=t,this.params=n,this.queryParams=r,this.fragment=i,this.data=o,this.outlet=a,this.component=s,this._futureSnapshot=u}return _createClass(e,[{key:"toString",value:function(){return this.snapshot?this.snapshot.toString():"Future(".concat(this._futureSnapshot,")")}},{key:"routeConfig",get:function(){return this._futureSnapshot.routeConfig}},{key:"root",get:function(){return this._routerState.root}},{key:"parent",get:function(){return this._routerState.parent(this)}},{key:"firstChild",get:function(){return this._routerState.firstChild(this)}},{key:"children",get:function(){return this._routerState.children(this)}},{key:"pathFromRoot",get:function(){return this._routerState.pathFromRoot(this)}},{key:"paramMap",get:function(){return this._paramMap||(this._paramMap=this.params.pipe(Object(k.a)((function(e){return Ee(e)})))),this._paramMap}},{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(Object(k.a)((function(e){return Ee(e)})))),this._queryParamMap}}]),e}();function pt(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"emptyOnly",n=e.pathFromRoot,r=0;if("always"!==t)for(r=n.length-1;r>=1;){var i=n[r],o=n[r-1];if(i.routeConfig&&""===i.routeConfig.path)r--;else{if(o.component)break;r--}}return function(e){return e.reduce((function(e,t){return{params:Object.assign(Object.assign({},e.params),t.params),data:Object.assign(Object.assign({},e.data),t.data),resolve:Object.assign(Object.assign({},e.resolve),t._resolvedData)}}),{params:{},data:{},resolve:{}})}(n.slice(r))}var yt=function(){function e(t,n,r,i,o,a,s,u,c,l,h){_classCallCheck(this,e),this.url=t,this.params=n,this.queryParams=r,this.fragment=i,this.data=o,this.outlet=a,this.component=s,this.routeConfig=u,this._urlSegment=c,this._lastPathIndex=l,this._resolve=h}return _createClass(e,[{key:"toString",value:function(){return"Route(url:'".concat(this.url.map((function(e){return e.toString()})).join("/"),"', path:'").concat(this.routeConfig?this.routeConfig.path:"","')")}},{key:"root",get:function(){return this._routerState.root}},{key:"parent",get:function(){return this._routerState.parent(this)}},{key:"firstChild",get:function(){return this._routerState.firstChild(this)}},{key:"children",get:function(){return this._routerState.children(this)}},{key:"pathFromRoot",get:function(){return this._routerState.pathFromRoot(this)}},{key:"paramMap",get:function(){return this._paramMap||(this._paramMap=Ee(this.params)),this._paramMap}},{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=Ee(this.queryParams)),this._queryParamMap}}]),e}(),gt=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,n))).url=e,mt(_assertThisInitialized(r),n),r}return _inherits(t,e),_createClass(t,[{key:"toString",value:function(){return bt(this._root)}}]),t}(st);function mt(e,t){t.value._routerState=e,t.children.forEach((function(t){return mt(e,t)}))}function bt(e){var t=e.children.length>0?" { ".concat(e.children.map(bt).join(", ")," } "):"";return"".concat(e.value).concat(t)}function _t(e){if(e.snapshot){var t=e.snapshot,n=e._futureSnapshot;e.snapshot=n,Ne(t.queryParams,n.queryParams)||e.queryParams.next(n.queryParams),t.fragment!==n.fragment&&e.fragment.next(n.fragment),Ne(t.params,n.params)||e.params.next(n.params),function(e,t){if(e.length!==t.length)return!1;for(var n=0;n0&&kt(r[0]))throw new Error("Root segment cannot have matrix parameters");var i=r.find((function(e){return"object"==typeof e&&null!=e&&e.outlets}));if(i&&i!==Le(r))throw new Error("{outlets:{}} has to be the last command")}return _createClass(e,[{key:"toRoot",value:function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}]),e}(),St=function e(t,n,r){_classCallCheck(this,e),this.segmentGroup=t,this.processChildren=n,this.index=r};function Et(e){return"object"==typeof e&&null!=e&&e.outlets?e.outlets.primary:"".concat(e)}function xt(e,t,n){if(e||(e=new ze([],{})),0===e.segments.length&&e.hasChildren())return Tt(e,t,n);var r=function(e,t,n){for(var r=0,i=t,o={match:!1,pathIndex:0,commandIndex:0};i=n.length)return o;var a=e.segments[i],s=Et(n[r]),u=r0&&void 0===s)break;if(s&&u&&"object"==typeof u&&void 0===u.outlets){if(!Rt(s,u,a))return o;r+=2}else{if(!Rt(s,{},a))return o;r++}i++}return{match:!0,pathIndex:i,commandIndex:r}}(e,t,n),i=n.slice(r.commandIndex);if(r.match&&r.pathIndex0?new ze([],{primary:e}):e;return new He(r,t,n)}},{key:"expandSegmentGroup",value:function(e,t,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(e,t,n).pipe(Object(k.a)((function(e){return new ze([],e)}))):this.expandSegment(e,n,t,n.segments,r,!0)}},{key:"expandChildren",value:function(e,t,n){var r=this;return function(n,i){if(0===Object.keys(n).length)return Object(o.a)({});var a=[],s=[],u={};return Ve(n,(function(n,i){var o,c,l=(o=i,c=n,r.expandSegmentGroup(e,t,c,o)).pipe(Object(k.a)((function(e){return u[i]=e})));"primary"===i?a.push(l):s.push(l)})),o.a.apply(null,a.concat(s)).pipe(Object(w.a)(),V(),Object(k.a)((function(){return u})))}(n.children)}},{key:"expandSegment",value:function(e,t,n,r,i,a){var s=this;return Object(o.a).apply(void 0,_toConsumableArray(n)).pipe(Object(k.a)((function(u){return s.expandSegmentAgainstRoute(e,t,n,u,r,i,a).pipe(F((function(e){if(e instanceof Lt)return Object(o.a)(null);throw e})))})),Object(w.a)(),B((function(e){return!!e})),F((function(e,n){if(e instanceof h||"EmptyError"===e.name){if(s.noLeftoversInUrl(t,r,i))return Object(o.a)(new ze([],{}));throw new Lt(t)}throw e})))}},{key:"noLeftoversInUrl",value:function(e,t,n){return 0===t.length&&!e.children[n]}},{key:"expandSegmentAgainstRoute",value:function(e,t,n,r,i,o,a){return Wt(r)!==o?Ut(t):void 0===r.redirectTo?this.matchSegmentAgainstRoute(e,t,r,i):a&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(e,t,n,r,i,o):Ut(t)}},{key:"expandSegmentAgainstRouteUsingRedirect",value:function(e,t,n,r,i,o){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(e,n,r,o):this.expandRegularSegmentAgainstRouteUsingRedirect(e,t,n,r,i,o)}},{key:"expandWildCardWithParamsAgainstRouteUsingRedirect",value:function(e,t,n,r){var i=this,o=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Ft(o):this.lineralizeSegments(n,o).pipe(Object(G.a)((function(n){var o=new ze(n,{});return i.expandSegment(e,o,t,n,r,!1)})))}},{key:"expandRegularSegmentAgainstRouteUsingRedirect",value:function(e,t,n,r,i,o){var a=this,s=qt(t,r,i),u=s.matched,c=s.consumedSegments,l=s.lastChild,h=s.positionalParamSegments;if(!u)return Ut(t);var f=this.applyRedirectCommands(c,r.redirectTo,h);return r.redirectTo.startsWith("/")?Ft(f):this.lineralizeSegments(r,f).pipe(Object(G.a)((function(r){return a.expandSegment(e,t,n,r.concat(i.slice(l)),o,!1)})))}},{key:"matchSegmentAgainstRoute",value:function(e,t,n,r){var i=this;if("**"===n.path)return n.loadChildren?this.configLoader.load(e.injector,n).pipe(Object(k.a)((function(e){return n._loadedConfig=e,new ze(r,{})}))):Object(o.a)(new ze(r,{}));var a=qt(t,n,r),s=a.matched,u=a.consumedSegments,c=a.lastChild;if(!s)return Ut(t);var l=r.slice(c);return this.getChildConfig(e,n,r).pipe(Object(G.a)((function(e){var n=e.module,r=e.routes,a=function(e,t,n,r){return n.length>0&&function(e,t,n){return n.some((function(n){return Gt(e,t,n)&&"primary"!==Wt(n)}))}(e,n,r)?{segmentGroup:Bt(new ze(t,function(e,t){var n={};n.primary=t;var r=!0,i=!1,o=void 0;try{for(var a,s=e[Symbol.iterator]();!(r=(a=s.next()).done);r=!0){var u=a.value;""===u.path&&"primary"!==Wt(u)&&(n[Wt(u)]=new ze([],{}))}}catch(c){i=!0,o=c}finally{try{r||null==s.return||s.return()}finally{if(i)throw o}}return n}(r,new ze(n,e.children)))),slicedSegments:[]}:0===n.length&&function(e,t,n){return n.some((function(n){return Gt(e,t,n)}))}(e,n,r)?{segmentGroup:Bt(new ze(e.segments,function(e,t,n,r){var i={},o=!0,a=!1,s=void 0;try{for(var u,c=n[Symbol.iterator]();!(o=(u=c.next()).done);o=!0){var l=u.value;Gt(e,t,l)&&!r[Wt(l)]&&(i[Wt(l)]=new ze([],{}))}}catch(h){a=!0,s=h}finally{try{o||null==c.return||c.return()}finally{if(a)throw s}}return Object.assign(Object.assign({},r),i)}(e,n,r,e.children))),slicedSegments:n}:{segmentGroup:e,slicedSegments:n}}(t,u,l,r),s=a.segmentGroup,c=a.slicedSegments;return 0===c.length&&s.hasChildren()?i.expandChildren(n,r,s).pipe(Object(k.a)((function(e){return new ze(u,e)}))):0===r.length&&0===c.length?Object(o.a)(new ze(u,{})):i.expandSegment(n,s,r,c,"primary",!0).pipe(Object(k.a)((function(e){return new ze(u.concat(e.segments),e.children)})))})))}},{key:"getChildConfig",value:function(e,t,n){var r=this;return t.children?Object(o.a)(new Pe(t.children,e)):t.loadChildren?void 0!==t._loadedConfig?Object(o.a)(t._loadedConfig):function(e,t,n){var r,i=t.canLoad;return i&&0!==i.length?Object(a.a)(i).pipe(Object(k.a)((function(r){var i,o=e.get(r);if(function(e){return e&&Mt(e.canLoad)}(o))i=o.canLoad(t,n);else{if(!Mt(o))throw new Error("Invalid CanLoad guard");i=o(t,n)}return Ue(i)}))).pipe(Object(w.a)(),(r=function(e){return!0===e},function(e){return e.lift(new W(r,void 0,e))})):Object(o.a)(!0)}(e.injector,t,n).pipe(Object(G.a)((function(n){return n?r.configLoader.load(e.injector,t).pipe(Object(k.a)((function(e){return t._loadedConfig=e,e}))):function(e){return new l.a((function(t){return t.error(xe("Cannot load children because the guard of the route \"path: '".concat(e.path,"'\" returned false")))}))}(t)}))):Object(o.a)(new Pe([],e))}},{key:"lineralizeSegments",value:function(e,t){for(var n=[],r=t.root;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return Object(o.a)(n);if(r.numberOfChildren>1||!r.children.primary)return Ht(e.redirectTo);r=r.children.primary}}},{key:"applyRedirectCommands",value:function(e,t,n){return this.applyRedirectCreatreUrlTree(t,this.urlSerializer.parse(t),e,n)}},{key:"applyRedirectCreatreUrlTree",value:function(e,t,n,r){var i=this.createSegmentGroup(e,t.root,n,r);return new He(i,this.createQueryParams(t.queryParams,this.urlTree.queryParams),t.fragment)}},{key:"createQueryParams",value:function(e,t){var n={};return Ve(e,(function(e,r){if("string"==typeof e&&e.startsWith(":")){var i=e.substring(1);n[r]=t[i]}else n[r]=e})),n}},{key:"createSegmentGroup",value:function(e,t,n,r){var i=this,o=this.createSegments(e,t.segments,n,r),a={};return Ve(t.children,(function(t,o){a[o]=i.createSegmentGroup(e,t,n,r)})),new ze(o,a)}},{key:"createSegments",value:function(e,t,n,r){var i=this;return t.map((function(t){return t.path.startsWith(":")?i.findPosParam(e,t,r):i.findOrReturn(t,n)}))}},{key:"findPosParam",value:function(e,t,n){var r=n[t.path.substring(1)];if(!r)throw new Error("Cannot redirect to '".concat(e,"'. Cannot find '").concat(t.path,"'."));return r}},{key:"findOrReturn",value:function(e,t){var n=0,r=!0,i=!1,o=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done);r=!0){var u=a.value;if(u.path===e.path)return t.splice(n),u;n++}}catch(c){i=!0,o=c}finally{try{r||null==s.return||s.return()}finally{if(i)throw o}}return e}}]),e}();function qt(e,t,n){if(""===t.path)return"full"===t.pathMatch&&(e.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var r=(t.matcher||Te)(n,e,t);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Bt(e){if(1===e.numberOfChildren&&e.children.primary){var t=e.children.primary;return new ze(e.segments.concat(t.segments),t.children)}return e}function Gt(e,t,n){return(!(e.hasChildren()||t.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Wt(e){return e.outlet||"primary"}var Zt=function e(t){_classCallCheck(this,e),this.path=t,this.route=this.path[this.path.length-1]},Qt=function e(t,n){_classCallCheck(this,e),this.component=t,this.route=n};function Jt(e,t,n){var r=function(e){if(!e)return null;for(var t=e.parent;t;t=t.parent){var n=t.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(t);return(r?r.module.injector:n).get(e)}function Kt(e,t,n){var r=ht(e),i=e.value;Ve(r,(function(e,r){Kt(e,i.component?t?t.children.getContext(r):null:t,n)})),n.canDeactivateChecks.push(new Qt(i.component&&t&&t.outlet&&t.outlet.isActivated?t.outlet.component:null,i))}var Xt=Symbol("INITIAL_VALUE");function $t(){return Object(Q.a)((function(e){return(function(){for(var e=arguments.length,t=new Array(e),n=0;n0?Le(n).parameters:{};i=new yt(n,s,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,hn(e),r,e.component,e,an(t),sn(t)+n.length,fn(e))}else{var u=function(e,t,n){if(""===t.path){if("full"===t.pathMatch&&(e.hasChildren()||n.length>0))throw new rn;return{consumedSegments:[],lastChild:0,parameters:{}}}var r=(t.matcher||Te)(n,e,t);if(!r)throw new rn;var i={};Ve(r.posParams,(function(e,t){i[t]=e.path}));var o=r.consumed.length>0?Object.assign(Object.assign({},i),r.consumed[r.consumed.length-1].parameters):i;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:o}}(t,e,n);o=u.consumedSegments,a=n.slice(u.lastChild),i=new yt(o,u.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,hn(e),r,e.component,e,an(t),sn(t)+o.length,fn(e))}var c=function(e){return e.children?e.children:e.loadChildren?e._loadedConfig.routes:[]}(e),l=un(t,o,a,c,this.relativeLinkResolution),h=l.segmentGroup,f=l.slicedSegments;if(0===f.length&&h.hasChildren()){var d=this.processChildren(c,h);return[new lt(i,d)]}if(0===c.length&&0===f.length)return[new lt(i,[])];var v=this.processSegment(c,h,f,"primary");return[new lt(i,v)]}}]),e}();function an(e){for(var t=e;t._sourceSegment;)t=t._sourceSegment;return t}function sn(e){for(var t=e,n=t._segmentIndexShift?t._segmentIndexShift:0;t._sourceSegment;)n+=(t=t._sourceSegment)._segmentIndexShift?t._segmentIndexShift:0;return n-1}function un(e,t,n,r,i){if(n.length>0&&function(e,t,n){return n.some((function(n){return cn(e,t,n)&&"primary"!==ln(n)}))}(e,n,r)){var o=new ze(t,function(e,t,n,r){var i={};i.primary=r,r._sourceSegment=e,r._segmentIndexShift=t.length;var o=!0,a=!1,s=void 0;try{for(var u,c=n[Symbol.iterator]();!(o=(u=c.next()).done);o=!0){var l=u.value;if(""===l.path&&"primary"!==ln(l)){var h=new ze([],{});h._sourceSegment=e,h._segmentIndexShift=t.length,i[ln(l)]=h}}}catch(f){a=!0,s=f}finally{try{o||null==c.return||c.return()}finally{if(a)throw s}}return i}(e,t,r,new ze(n,e.children)));return o._sourceSegment=e,o._segmentIndexShift=t.length,{segmentGroup:o,slicedSegments:[]}}if(0===n.length&&function(e,t,n){return n.some((function(n){return cn(e,t,n)}))}(e,n,r)){var a=new ze(e.segments,function(e,t,n,r,i,o){var a={},s=!0,u=!1,c=void 0;try{for(var l,h=r[Symbol.iterator]();!(s=(l=h.next()).done);s=!0){var f=l.value;if(cn(e,n,f)&&!i[ln(f)]){var d=new ze([],{});d._sourceSegment=e,d._segmentIndexShift="legacy"===o?e.segments.length:t.length,a[ln(f)]=d}}}catch(v){u=!0,c=v}finally{try{s||null==h.return||h.return()}finally{if(u)throw c}}return Object.assign(Object.assign({},i),a)}(e,t,n,r,e.children,i));return a._sourceSegment=e,a._segmentIndexShift=t.length,{segmentGroup:a,slicedSegments:n}}var s=new ze(e.segments,e.children);return s._sourceSegment=e,s._segmentIndexShift=t.length,{segmentGroup:s,slicedSegments:n}}function cn(e,t,n){return(!(e.hasChildren()||t.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function ln(e){return e.outlet||"primary"}function hn(e){return e.data||{}}function fn(e){return e.resolve||{}}function dn(e,t,n,r){var i=Jt(e,t,r);return Ue(i.resolve?i.resolve(t,n):i(t,n))}function vn(e){return function(t){return t.pipe(Object(Q.a)((function(t){var n=e(t);return n?Object(a.a)(n).pipe(Object(k.a)((function(){return t}))):Object(a.a)([t])})))}}var pn=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"shouldDetach",value:function(e){return!1}},{key:"store",value:function(e,t){}},{key:"shouldAttach",value:function(e){return!1}},{key:"retrieve",value:function(e){return null}},{key:"shouldReuseRoute",value:function(e,t){return e.routeConfig===t.routeConfig}}]),e}(),yn=new i.q("ROUTES"),gn=function(){function e(t,n,r,i){_classCallCheck(this,e),this.loader=t,this.compiler=n,this.onLoadStartListener=r,this.onLoadEndListener=i}return _createClass(e,[{key:"load",value:function(e,t){var n=this;return this.onLoadStartListener&&this.onLoadStartListener(t),this.loadModuleFactory(t.loadChildren).pipe(Object(k.a)((function(r){n.onLoadEndListener&&n.onLoadEndListener(t);var i=r.create(e);return new Pe(De(i.injector.get(yn)).map(Ie),i)})))}},{key:"loadModuleFactory",value:function(e){var t=this;return"string"==typeof e?Object(a.a)(this.loader.load(e)):Ue(e()).pipe(Object(G.a)((function(e){return e instanceof i.v?Object(o.a)(e):Object(a.a)(t.compiler.compileModuleAsync(e))})))}}]),e}(),mn=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"shouldProcessUrl",value:function(e){return!0}},{key:"extract",value:function(e){return e}},{key:"merge",value:function(e,t){return e}}]),e}();function bn(e){throw e}function _n(e,t,n){return t.parse("/")}function Cn(e,t){return Object(o.a)(null)}var kn,wn,On,Sn=((On=function(){function e(t,n,r,o,a,u,l,h){var f=this;_classCallCheck(this,e),this.rootComponentType=t,this.urlSerializer=n,this.rootContexts=r,this.location=o,this.config=h,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new s.a,this.errorHandler=bn,this.malformedUriErrorHandler=_n,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Cn,afterPreactivation:Cn},this.urlHandlingStrategy=new mn,this.routeReuseStrategy=new pn,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=a.get(i.x),this.console=a.get(i.W);var d=a.get(i.z);this.isNgZoneEnabled=d instanceof i.z,this.resetConfig(h),this.currentUrlTree=new He(new ze([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new gn(u,l,(function(e){return f.triggerEvent(new ge(e))}),(function(e){return f.triggerEvent(new me(e))})),this.routerState=dt(this.currentUrlTree,this.rootComponentType),this.transitions=new c({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return _createClass(e,[{key:"setupNavigations",value:function(e){var t=this,n=this.events;return e.pipe(Object(O.a)((function(e){return 0!==e.id})),Object(k.a)((function(e){return Object.assign(Object.assign({},e),{extractedUrl:t.urlHandlingStrategy.extract(e.rawUrl)})})),Object(Q.a)((function(e){var r,i,s,u,l=!1,h=!1;return Object(o.a)(e).pipe(Object(te.a)((function(e){t.currentNavigation={id:e.id,initialUrl:e.currentRawUrl,extractedUrl:e.extractedUrl,trigger:e.source,extras:e.extras,previousNavigation:t.lastSuccessfulNavigation?Object.assign(Object.assign({},t.lastSuccessfulNavigation),{previousNavigation:null}):null}})),Object(Q.a)((function(e){var r,i,a,s,u=!t.navigated||e.extractedUrl.toString()!==t.browserUrlTree.toString();if(("reload"===t.onSameUrlNavigation||u)&&t.urlHandlingStrategy.shouldProcessUrl(e.rawUrl))return Object(o.a)(e).pipe(Object(Q.a)((function(e){var r=t.transitions.getValue();return n.next(new ue(e.id,t.serializeUrl(e.extractedUrl),e.source,e.restoredState)),r!==t.transitions.getValue()?C.a:[e]})),Object(Q.a)((function(e){return Promise.resolve(e)})),(r=t.ngModule.injector,i=t.configLoader,a=t.urlSerializer,s=t.config,function(e){return e.pipe(Object(Q.a)((function(e){return function(e,t,n,r,i){return new zt(e,t,n,r,i).apply()}(r,i,a,e.extractedUrl,s).pipe(Object(k.a)((function(t){return Object.assign(Object.assign({},e),{urlAfterRedirects:t})})))})))}),Object(te.a)((function(e){t.currentNavigation=Object.assign(Object.assign({},t.currentNavigation),{finalUrl:e.urlAfterRedirects})})),function(e,n,r,i,o){return function(r){return r.pipe(Object(G.a)((function(r){return function(e,t,n,r){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"emptyOnly",o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"legacy";return new on(e,t,n,r,i,o).recognize()}(e,n,r.urlAfterRedirects,(a=r.urlAfterRedirects,t.serializeUrl(a)),i,o).pipe(Object(k.a)((function(e){return Object.assign(Object.assign({},r),{targetSnapshot:e})})));var a})))}}(t.rootComponentType,t.config,0,t.paramsInheritanceStrategy,t.relativeLinkResolution),Object(te.a)((function(e){"eager"===t.urlUpdateStrategy&&(e.extras.skipLocationChange||t.setBrowserUrl(e.urlAfterRedirects,!!e.extras.replaceUrl,e.id,e.extras.state),t.browserUrlTree=e.urlAfterRedirects)})),Object(te.a)((function(e){var r=new fe(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot);n.next(r)})));if(u&&t.rawUrlTree&&t.urlHandlingStrategy.shouldProcessUrl(t.rawUrlTree)){var c=e.id,l=e.extractedUrl,h=e.source,f=e.restoredState,d=e.extras,v=new ue(c,t.serializeUrl(l),h,f);n.next(v);var p=dt(l,t.rootComponentType).snapshot;return Object(o.a)(Object.assign(Object.assign({},e),{targetSnapshot:p,urlAfterRedirects:l,extras:Object.assign(Object.assign({},d),{skipLocationChange:!1,replaceUrl:!1})}))}return t.rawUrlTree=e.rawUrl,t.browserUrlTree=e.urlAfterRedirects,e.resolve(null),C.a})),vn((function(e){var n=e.targetSnapshot,r=e.id,i=e.extractedUrl,o=e.rawUrl,a=e.extras,s=a.skipLocationChange,u=a.replaceUrl;return t.hooks.beforePreactivation(n,{navigationId:r,appliedUrlTree:i,rawUrlTree:o,skipLocationChange:!!s,replaceUrl:!!u})})),Object(te.a)((function(e){var n=new de(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot);t.triggerEvent(n)})),Object(k.a)((function(e){return Object.assign(Object.assign({},e),{guards:(n=e.targetSnapshot,r=e.currentSnapshot,i=t.rootContexts,o=n._root,function e(t,n,r,i){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{canDeactivateChecks:[],canActivateChecks:[]},a=ht(n);return t.children.forEach((function(t){!function(t,n,r,i){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{canDeactivateChecks:[],canActivateChecks:[]},a=t.value,s=n?n.value:null,u=r?r.getContext(t.value.outlet):null;if(s&&a.routeConfig===s.routeConfig){var c=function(e,t,n){if("function"==typeof n)return n(e,t);switch(n){case"pathParamsChange":return!Be(e.url,t.url);case"pathParamsOrQueryParamsChange":return!Be(e.url,t.url)||!Ne(e.queryParams,t.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Ct(e,t)||!Ne(e.queryParams,t.queryParams);case"paramsChange":default:return!Ct(e,t)}}(s,a,a.routeConfig.runGuardsAndResolvers);c?o.canActivateChecks.push(new Zt(i)):(a.data=s.data,a._resolvedData=s._resolvedData),e(t,n,a.component?u?u.children:null:r,i,o),c&&o.canDeactivateChecks.push(new Qt(u&&u.outlet&&u.outlet.component||null,s))}else s&&Kt(n,u,o),o.canActivateChecks.push(new Zt(i)),e(t,null,a.component?u?u.children:null:r,i,o)}(t,a[t.value.outlet],r,i.concat([t.value]),o),delete a[t.value.outlet]})),Ve(a,(function(e,t){return Kt(e,r.getContext(t),o)})),o}(o,r?r._root:null,i,[o.value]))});var n,r,i,o})),function(e,t){return function(n){return n.pipe(Object(G.a)((function(n){var r=n.targetSnapshot,i=n.currentSnapshot,s=n.guards,u=s.canActivateChecks,c=s.canDeactivateChecks;return 0===c.length&&0===u.length?Object(o.a)(Object.assign(Object.assign({},n),{guardsResult:!0})):function(e,t,n,r){return Object(a.a)(e).pipe(Object(G.a)((function(e){return function(e,t,n,r,i){var a=t&&t.routeConfig?t.routeConfig.canDeactivate:null;if(!a||0===a.length)return Object(o.a)(!0);var s=a.map((function(o){var a,s=Jt(o,t,i);if(function(e){return e&&Mt(e.canDeactivate)}(s))a=Ue(s.canDeactivate(e,t,n,r));else{if(!Mt(s))throw new Error("Invalid CanDeactivate guard");a=Ue(s(e,t,n,r))}return a.pipe(B())}));return Object(o.a)(s).pipe($t())}(e.component,e.route,n,t,r)})),B((function(e){return!0!==e}),!0))}(c,r,i,e).pipe(Object(G.a)((function(n){return n&&"boolean"==typeof n?function(e,t,n,r){return Object(a.a)(t).pipe(Object(Y.a)((function(t){return Object(a.a)([en(t.route.parent,r),Yt(t.route,r),nn(e,t.path,n),tn(e,t.route,n)]).pipe(Object(w.a)(),B((function(e){return!0!==e}),!0))})),B((function(e){return!0!==e}),!0))}(r,u,e,t):Object(o.a)(n)})),Object(k.a)((function(e){return Object.assign(Object.assign({},n),{guardsResult:e})})))})))}}(t.ngModule.injector,(function(e){return t.triggerEvent(e)})),Object(te.a)((function(e){if(Dt(e.guardsResult)){var n=xe('Redirecting to "'.concat(t.serializeUrl(e.guardsResult),'"'));throw n.url=e.guardsResult,n}})),Object(te.a)((function(e){var n=new ve(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot,!!e.guardsResult);t.triggerEvent(n)})),Object(O.a)((function(e){if(!e.guardsResult){t.resetUrlToCurrentUrlTree();var r=new le(e.id,t.serializeUrl(e.extractedUrl),"");return n.next(r),e.resolve(!1),!1}return!0})),vn((function(e){if(e.guards.canActivateChecks.length)return Object(o.a)(e).pipe(Object(te.a)((function(e){var n=new pe(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot);t.triggerEvent(n)})),(n=t.paramsInheritanceStrategy,r=t.ngModule.injector,function(e){return e.pipe(Object(G.a)((function(e){var t=e.targetSnapshot,i=e.guards.canActivateChecks;return i.length?Object(a.a)(i).pipe(Object(Y.a)((function(e){return function(e,t,n,r){return function(e,t,n,r){var i=Object.keys(e);if(0===i.length)return Object(o.a)({});if(1===i.length){var s=i[0];return dn(e[s],t,n,r).pipe(Object(k.a)((function(e){return _defineProperty({},s,e)})))}var u={};return Object(a.a)(i).pipe(Object(G.a)((function(i){return dn(e[i],t,n,r).pipe(Object(k.a)((function(e){return u[i]=e,e})))}))).pipe(V(),Object(k.a)((function(){return u})))}(e._resolve,e,t,r).pipe(Object(k.a)((function(t){return e._resolvedData=t,e.data=Object.assign(Object.assign({},e.data),pt(e,n).resolve),null})))}(e.route,t,n,r)})),function(e,t){return arguments.length>=2?function(n){return Object(ee.a)(K(e,t),x(1),N(t))(n)}:function(t){return Object(ee.a)(K((function(t,n,r){return e(t,n,r+1)})),x(1))(t)}}((function(e,t){return e})),Object(k.a)((function(t){return e}))):Object(o.a)(e)})))}),Object(te.a)((function(e){var n=new ye(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot);t.triggerEvent(n)})));var n,r})),vn((function(e){var n=e.targetSnapshot,r=e.id,i=e.extractedUrl,o=e.rawUrl,a=e.extras,s=a.skipLocationChange,u=a.replaceUrl;return t.hooks.afterPreactivation(n,{navigationId:r,appliedUrlTree:i,rawUrlTree:o,skipLocationChange:!!s,replaceUrl:!!u})})),Object(k.a)((function(e){var n=function(e,t,n){var r=function e(t,n,r){if(r&&t.shouldReuseRoute(n.value,r.value.snapshot)){var i=r.value;i._futureSnapshot=n.value;var o=function(t,n,r){return n.children.map((function(n){var i=!0,o=!1,a=void 0;try{for(var s,u=r.children[Symbol.iterator]();!(i=(s=u.next()).done);i=!0){var c=s.value;if(t.shouldReuseRoute(c.value.snapshot,n.value))return e(t,n,c)}}catch(l){o=!0,a=l}finally{try{i||null==u.return||u.return()}finally{if(o)throw a}}return e(t,n)}))}(t,n,r);return new lt(i,o)}var a=t.retrieve(n.value);if(a){var s=a.route;return function e(t,n){if(t.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(t.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=t.value;for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:{},n=t.relativeTo,r=t.queryParams,o=t.fragment,a=t.preserveQueryParams,s=t.queryParamsHandling,u=t.preserveFragment;Object(i.T)()&&a&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");var c=n||this.routerState.root,l=u?this.currentUrlTree.fragment:o,h=null;if(s)switch(s){case"merge":h=Object.assign(Object.assign({},this.currentUrlTree.queryParams),r);break;case"preserve":h=this.currentUrlTree.queryParams;break;default:h=r||null}else h=a?this.currentUrlTree.queryParams:r||null;return null!==h&&(h=this.removeEmptyProps(h)),function(e,t,n,r,i){if(0===n.length)return wt(t.root,t.root,t,r,i);var o=function(e){if("string"==typeof e[0]&&1===e.length&&"/"===e[0])return new Ot(!0,0,e);var t=0,n=!1,r=e.reduce((function(e,r,i){if("object"==typeof r&&null!=r){if(r.outlets){var o={};return Ve(r.outlets,(function(e,t){o[t]="string"==typeof e?e.split("/"):e})),[].concat(_toConsumableArray(e),[{outlets:o}])}if(r.segmentPath)return[].concat(_toConsumableArray(e),[r.segmentPath])}return"string"!=typeof r?[].concat(_toConsumableArray(e),[r]):0===i?(r.split("/").forEach((function(r,i){0==i&&"."===r||(0==i&&""===r?n=!0:".."===r?t++:""!=r&&e.push(r))})),e):[].concat(_toConsumableArray(e),[r])}),[]);return new Ot(n,t,r)}(n);if(o.toRoot())return wt(t.root,new ze([],{}),t,r,i);var a=function(e,t,n){if(e.isAbsolute)return new St(t.root,!0,0);if(-1===n.snapshot._lastPathIndex)return new St(n.snapshot._urlSegment,!0,0);var r=kt(e.commands[0])?0:1;return function(e,t,n){for(var r=e,i=t,o=n;o>i;){if(o-=i,!(r=r.parent))throw new Error("Invalid number of '../'");i=r.segments.length}return new St(r,!1,i-o)}(n.snapshot._urlSegment,n.snapshot._lastPathIndex+r,e.numberOfDoubleDots)}(o,t,e),s=a.processChildren?Tt(a.segmentGroup,a.index,o.commands):xt(a.segmentGroup,a.index,o.commands);return wt(a.segmentGroup,s,t,r,i)}(c,this.currentUrlTree,e,h,l)}},{key:"navigateByUrl",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{skipLocationChange:!1};Object(i.T)()&&this.isNgZoneEnabled&&!i.z.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var n=Dt(e)?e:this.parseUrl(e),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,t)}},{key:"navigate",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{skipLocationChange:!1};return function(e){for(var t=0;t2&&void 0!==arguments[2]?arguments[2]:{};_classCallCheck(this,e),this.router=t,this.viewportScroller=n,this.options=r,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},r.scrollPositionRestoration=r.scrollPositionRestoration||"disabled",r.anchorScrolling=r.anchorScrolling||"disabled"}return _createClass(e,[{key:"init",value:function(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}},{key:"createScrollEvents",value:function(){var e=this;return this.router.events.subscribe((function(t){t instanceof ue?(e.store[e.lastId]=e.viewportScroller.getScrollPosition(),e.lastSource=t.navigationTrigger,e.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof ce&&(e.lastId=t.id,e.scheduleScrollEvent(t,e.router.parseUrl(t.urlAfterRedirects).fragment))}))}},{key:"consumeScrollEvents",value:function(){var e=this;return this.router.events.subscribe((function(t){t instanceof we&&(t.position?"top"===e.options.scrollPositionRestoration?e.viewportScroller.scrollToPosition([0,0]):"enabled"===e.options.scrollPositionRestoration&&e.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===e.options.anchorScrolling?e.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==e.options.scrollPositionRestoration&&e.viewportScroller.scrollToPosition([0,0]))}))}},{key:"scheduleScrollEvent",value:function(e,t){this.router.triggerEvent(new we(e,"popstate"===this.lastSource?this.store[this.restoredId]:null,t))}},{key:"ngOnDestroy",value:function(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}]),e}()).\u0275fac=function(e){i.Tb()},jn.\u0275dir=i.Eb({type:jn}),jn),zn=new i.q("ROUTER_CONFIGURATION"),qn=new i.q("ROUTER_FORROOT_GUARD"),Bn=[r.g,{provide:We,useClass:Ze},{provide:Sn,useFactory:function(e,t,n,i,o,a,s,u){var c=arguments.length>8&&void 0!==arguments[8]?arguments[8]:{},l=arguments.length>9?arguments[9]:void 0,h=arguments.length>10?arguments[10]:void 0,f=new Sn(null,t,n,i,o,a,s,De(u));if(l&&(f.urlHandlingStrategy=l),h&&(f.routeReuseStrategy=h),c.errorHandler&&(f.errorHandler=c.errorHandler),c.malformedUriErrorHandler&&(f.malformedUriErrorHandler=c.malformedUriErrorHandler),c.enableTracing){var d=Object(r.q)();f.events.subscribe((function(e){d.logGroup("Router Event: ".concat(e.constructor.name)),d.log(e.toString()),d.log(e),d.logGroupEnd()}))}return c.onSameUrlNavigation&&(f.onSameUrlNavigation=c.onSameUrlNavigation),c.paramsInheritanceStrategy&&(f.paramsInheritanceStrategy=c.paramsInheritanceStrategy),c.urlUpdateStrategy&&(f.urlUpdateStrategy=c.urlUpdateStrategy),c.relativeLinkResolution&&(f.relativeLinkResolution=c.relativeLinkResolution),f},deps:[i.g,We,Mn,r.g,i.r,i.w,i.i,yn,zn,[function(){return function e(){_classCallCheck(this,e)}}(),new i.A],[function(){return function e(){_classCallCheck(this,e)}}(),new i.A]]},Mn,{provide:vt,useFactory:function(e){return e.routerState.root},deps:[Sn]},{provide:i.w,useClass:i.J},Fn,Un,function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"preload",value:function(e,t){return t().pipe(F((function(){return Object(o.a)(null)})))}}]),e}(),{provide:zn,useValue:{enableTracing:!1}}];function Gn(){return new i.y("Router",Sn)}var Wn,Zn=((Wn=function(){function e(t,n){_classCallCheck(this,e)}return _createClass(e,null,[{key:"forRoot",value:function(t,n){return{ngModule:e,providers:[Bn,Xn(t),{provide:qn,useFactory:Kn,deps:[[Sn,new i.A,new i.I]]},{provide:zn,useValue:n||{}},{provide:r.h,useFactory:Jn,deps:[r.l,[new i.p(r.a),new i.A],zn]},{provide:Hn,useFactory:Qn,deps:[Sn,r.m,zn]},{provide:Vn,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Un},{provide:i.y,multi:!0,useFactory:Gn},[Yn,{provide:i.d,multi:!0,useFactory:er,deps:[Yn]},{provide:nr,useFactory:tr,deps:[Yn]},{provide:i.b,multi:!0,useExisting:nr}]]}}},{key:"forChild",value:function(t){return{ngModule:e,providers:[Xn(t)]}}}]),e}()).\u0275mod=i.Hb({type:Wn}),Wn.\u0275inj=i.Gb({factory:function(e){return new(e||Wn)(i.Qb(qn,8),i.Qb(Sn,8))}}),Wn);function Qn(e,t,n){return n.scrollOffset&&t.setOffset(n.scrollOffset),new Hn(e,t,n)}function Jn(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return n.useHash?new r.e(e,t):new r.k(e,t)}function Kn(e){if(e)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function Xn(e){return[{provide:i.a,multi:!0,useValue:e},{provide:yn,multi:!0,useValue:e}]}var $n,Yn=(($n=function(){function e(t){_classCallCheck(this,e),this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new s.a}return _createClass(e,[{key:"appInitializer",value:function(){var e=this;return this.injector.get(r.f,Promise.resolve(null)).then((function(){var t=null,n=new Promise((function(e){return t=e})),r=e.injector.get(Sn),i=e.injector.get(zn);if(e.isLegacyDisabled(i)||e.isLegacyEnabled(i))t(!0);else if("disabled"===i.initialNavigation)r.setUpLocationChangeListener(),t(!0);else{if("enabled"!==i.initialNavigation)throw new Error("Invalid initialNavigation options: '".concat(i.initialNavigation,"'"));r.hooks.afterPreactivation=function(){return e.initNavigation?Object(o.a)(null):(e.initNavigation=!0,t(!0),e.resultOfPreactivationDone)},r.initialNavigation()}return n}))}},{key:"bootstrapListener",value:function(e){var t=this.injector.get(zn),n=this.injector.get(Fn),r=this.injector.get(Hn),o=this.injector.get(Sn),a=this.injector.get(i.g);e===a.components[0]&&(this.isLegacyEnabled(t)?o.initialNavigation():this.isLegacyDisabled(t)&&o.setUpLocationChangeListener(),n.setUpPreloading(),r.init(),o.resetRootComponentType(a.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}},{key:"isLegacyEnabled",value:function(e){return"legacy_enabled"===e.initialNavigation||!0===e.initialNavigation||void 0===e.initialNavigation}},{key:"isLegacyDisabled",value:function(e){return"legacy_disabled"===e.initialNavigation||!1===e.initialNavigation}}]),e}()).\u0275fac=function(e){return new(e||$n)(i.Qb(i.r))},$n.\u0275prov=i.Fb({token:$n,factory:$n.\u0275fac}),$n);function er(e){return e.appInitializer.bind(e)}function tr(e){return e.bootstrapListener.bind(e)}var nr=new i.q("Router Initializer")},vkgz:function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var r=n("7o/Q"),i=n("KqfI"),o=n("n6bG");function a(e,t,n){return function(r){return r.lift(new s(e,t,n))}}var s=function(){function e(t,n,r){_classCallCheck(this,e),this.nextOrObserver=t,this.error=n,this.complete=r}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.nextOrObserver,this.error,this.complete))}}]),e}(),u=function(e){function t(e,n,r,a){var s;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e)))._tapNext=i.a,s._tapError=i.a,s._tapComplete=i.a,s._tapError=r||i.a,s._tapComplete=a||i.a,Object(o.a)(n)?(s._context=_assertThisInitialized(s),s._tapNext=n):n&&(s._context=n,s._tapNext=n.next||i.a,s._tapError=n.error||i.a,s._tapComplete=n.complete||i.a),s}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){try{this._tapNext.call(this._context,e)}catch(t){return void this.destination.error(t)}this.destination.next(e)}},{key:"_error",value:function(e){try{this._tapError.call(this._context,e)}catch(e){return void this.destination.error(e)}this.destination.error(e)}},{key:"_complete",value:function(){try{this._tapComplete.call(this._context)}catch(e){return void this.destination.error(e)}return this.destination.complete()}}]),t}(r.a)},"x+ZX":function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var r=n("7o/Q");function i(){return function(e){return e.lift(new o(e))}}var o=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new a(e,n),i=t.subscribe(r);return r.closed||(r.connection=n.connect()),i}}]),e}(),a=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(r.a)},yCtX:function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var r=n("HDdC"),i=n("ngJS"),o=n("jZKg");function a(e,t){return t?Object(o.a)(e,t):new r.a(Object(i.a)(e))}},"z+Ro":function(e,t,n){"use strict";function r(e){return e&&"function"==typeof e.schedule}n.d(t,"a",(function(){return r}))},zUnb:function(e,t,n){"use strict";n.r(t);var r,i,o,a,s=n("fXoL"),u=n("ofXK"),c=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=l||(l=document.querySelector("base"))?l.getAttribute("href"):null;return null==n?null:(t=n,r||(r=document.createElement("a")),r.setAttribute("href",t),"/"===r.pathname.charAt(0)?r.pathname:"/"+r.pathname)}},{key:"resetBaseElement",value:function(){l=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return Object(u.r)(document.cookie,e)}}],[{key:"makeCurrent",value:function(){Object(u.s)(new t)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(u.o)),l=null,h=new s.q("TRANSITION_ID"),f=[{provide:s.d,useFactory:function(e,t,n){return function(){n.get(s.e).donePromise.then((function(){var n=Object(u.q)();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[h,u.d,s.r],multi:!0}],d=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){s.nb.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},s.nb.getAllAngularTestabilities=function(){return e.getAllTestabilities()},s.nb.getAllAngularRootElements=function(){return e.getAllRootElements()},s.nb.frameworkStabilizers||(s.nb.frameworkStabilizers=[]),s.nb.frameworkStabilizers.push((function(e){var t=s.nb.getAllAngularTestabilities(),n=t.length,r=!1,i=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(i)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Object(u.q)().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){Object(s.V)(new e)}}]),e}(),v=new s.q("EventManagerPlugins"),p=((i=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),o+=e+".")})),o+=i,0!=n.length||0===i.length)return null;var a={};return a.domEventName=r,a.fullKey=o,a}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&N.hasOwnProperty(t)&&(t=N[t]))}return I[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),R.forEach((function(r){r!=n&&(0,M[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(i){t.getEventFullKey(i)===e&&r.runGuarded((function(){return n(i)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(y)).\u0275fac=function(e){return new(e||S)(s.Qb(u.d))},S.\u0275prov=s.Fb({token:S,factory:S.\u0275fac}),S),L=[{provide:s.B,useValue:u.p},{provide:s.C,useValue:function(){c.makeCurrent(),d.init()},multi:!0},{provide:u.d,useFactory:function(){return Object(s.tb)(document),document},deps:[]}],V=Object(s.Q)(s.U,"browser",L),U=[[],{provide:s.X,useValue:"root"},{provide:s.m,useFactory:function(){return new s.m},deps:[]},{provide:v,useClass:j,multi:!0,deps:[u.d,s.z,s.B]},{provide:v,useClass:D,multi:!0,deps:[u.d]},[],{provide:x,useClass:x,deps:[p,m,s.c]},{provide:s.E,useExisting:x},{provide:g,useExisting:m},{provide:m,useClass:m,deps:[u.d]},{provide:s.L,useClass:s.L,deps:[s.z]},{provide:p,useClass:p,deps:[v,s.z]},[]],F=((E=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:s.c,useValue:t.appId},{provide:h,useExisting:s.c},f]}}}]),e}()).\u0275mod=s.Hb({type:E}),E.\u0275inj=s.Gb({factory:function(e){return new(e||E)(s.Qb(E,12))},providers:U,imports:[u.b,s.f]}),E);"undefined"!=typeof window&&window;var H,z,q,B,G,W,Z,Q=n("tyNb"),J=((H=function e(){_classCallCheck(this,e)}).\u0275fac=function(e){return new(e||H)},H.\u0275cmp=s.Db({type:H,selectors:[["app"]],decls:1,vars:0,template:function(e,t){1&e&&s.Kb(0,"router-outlet")},directives:[Q.f],encapsulation:2}),H),K=n("3Pt+"),X=n("jU2X"),$=n("4Sfc"),Y=n("Cfvw"),ee=((q=function(){function e(){_classCallCheck(this,e),this.products=[new $.a(1,"Product 1","Category 1","Product 1 (Category 1)",100),new $.a(2,"Product 2","Category 1","Product 2 (Category 1)",100),new $.a(3,"Product 3","Category 1","Product 3 (Category 1)",100),new $.a(4,"Product 4","Category 1","Product 4 (Category 1)",100),new $.a(5,"Product 5","Category 1","Product 5 (Category 1)",100),new $.a(6,"Product 6","Category 2","Product 6 (Category 2)",100),new $.a(7,"Product 7","Category 2","Product 7 (Category 2)",100),new $.a(8,"Product 8","Category 2","Product 8 (Category 2)",100),new $.a(9,"Product 9","Category 2","Product 9 (Category 2)",100),new $.a(10,"Product 10","Category 2","Product 10 (Category 2)",100),new $.a(11,"Product 11","Category 3","Product 11 (Category 3)",100),new $.a(12,"Product 12","Category 3","Product 12 (Category 3)",100),new $.a(13,"Product 13","Category 3","Product 13 (Category 3)",100),new $.a(14,"Product 14","Category 3","Product 14 (Category 3)",100),new $.a(15,"Product 15","Category 3","Product 15 (Category 3)",100)]}return _createClass(e,[{key:"getProducts",value:function(){return Object(Y.a)([this.products])}},{key:"saveOrder",value:function(e){return console.log(JSON.stringify(e)),Object(Y.a)([e])}}]),e}()).\u0275fac=function(e){return new(e||q)},q.\u0275prov=s.Fb({token:q,factory:q.\u0275fac}),q),te=((z=function(){function e(){_classCallCheck(this,e),this.lines=[],this.itemCount=0,this.cartPrice=0}return _createClass(e,[{key:"addLine",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=this.lines.find((function(t){return t.product.id==e.id}));null!=n?n.quantity+=t:this.lines.push(new ne(e,t)),this.recalculate()}},{key:"updateQuantity",value:function(e,t){var n=this.lines.find((function(t){return t.product.id==e.id}));null!=n&&(n.quantity=Number(t)),this.recalculate()}},{key:"removeLine",value:function(e){var t=this.lines.findIndex((function(t){return t.product.id==e}));this.lines.splice(t,1),this.recalculate()}},{key:"clear",value:function(){this.lines=[],this.itemCount=0,this.cartPrice=0}},{key:"recalculate",value:function(){var e=this;this.itemCount=0,this.cartPrice=0,this.lines.forEach((function(t){e.itemCount+=t.quantity,e.cartPrice+=t.quantity*t.product.price}))}}]),e}()).\u0275fac=function(e){return new(e||z)},z.\u0275prov=s.Fb({token:z,factory:z.\u0275fac}),z),ne=function(){function e(t,n){_classCallCheck(this,e),this.product=t,this.quantity=n}return _createClass(e,[{key:"lineTotal",get:function(){return this.quantity*this.product.price}}]),e}(),re=((B=function(){function e(t){_classCallCheck(this,e),this.cart=t,this.shipped=!1}return _createClass(e,[{key:"clear",value:function(){this.id=null,this.name=this.address=this.city=null,this.state=this.zip=this.country=null,this.shipped=!1,this.cart.clear()}}]),e}()).\u0275fac=function(e){return new(e||B)(s.Qb(te))},B.\u0275prov=s.Fb({token:B,factory:B.\u0275fac}),B),ie=n("hf/X"),oe=n("DZdm"),ae=n("tk/3"),se=n("hO0c"),ue=n("XNiG"),ce=((Z=function(){function e(){var t=this;_classCallCheck(this,e),this.connEvents=new ue.a,window.addEventListener("online",(function(e){return t.handleConnectionChange(e)})),window.addEventListener("offline",(function(e){return t.handleConnectionChange(e)}))}return _createClass(e,[{key:"handleConnectionChange",value:function(e){this.connEvents.next(this.connected)}},{key:"connected",get:function(){return window.navigator.onLine}},{key:"Changes",get:function(){return this.connEvents}}]),e}()).\u0275fac=function(e){return new(e||Z)},Z.\u0275prov=s.Fb({token:Z,factory:Z.\u0275fac}),Z),le=((W=function e(){_classCallCheck(this,e)}).\u0275mod=s.Hb({type:W}),W.\u0275inj=s.Gb({factory:function(e){return new(e||W)},providers:[X.a,te,re,ie.a,{provide:ee,useClass:oe.a},oe.a,se.a,ce],imports:[[ae.b]]}),W),he=((G=function e(){_classCallCheck(this,e)}).\u0275mod=s.Hb({type:G}),G.\u0275inj=s.Gb({factory:function(e){return new(e||G)},imports:[[le,F,K.c,Q.e]]}),G);function fe(e,t){if(1&e&&(s.Mb(0,"span"),s.hc(1),s.Xb(2,"currency"),s.Lb()),2&e){var n=s.Wb();s.zb(1),s.kc(" ",n.cart.itemCount," item(s) ",s.Yb(2,2,n.cart.cartPrice,"USD","symbol","2.2-2")," ")}}function de(e,t){1&e&&(s.Mb(0,"span"),s.hc(1," (empty) "),s.Lb())}var ve,pe,ye=((pe=function e(t){_classCallCheck(this,e),this.cart=t}).\u0275fac=function(e){return new(e||pe)(s.Jb(te))},pe.\u0275cmp=s.Db({type:pe,selectors:[["cart-summary"]],decls:7,vars:3,consts:[[1,"float-right"],[4,"ngIf"],["routerLink","/cart",1,"btn","btn-sm","bg-dark","text-white",3,"disabled"],[1,"fa","fa-shopping-cart"]],template:function(e,t){1&e&&(s.Mb(0,"div",0),s.Mb(1,"small"),s.hc(2," Your cart: "),s.gc(3,fe,3,7,"span",1),s.gc(4,de,2,0,"span",1),s.Lb(),s.Mb(5,"button",2),s.Kb(6,"i",3),s.Lb(),s.Lb()),2&e&&(s.zb(3),s.Zb("ngIf",t.cart.itemCount>0),s.zb(1),s.Zb("ngIf",0==t.cart.itemCount),s.zb(1),s.Zb("disabled",0==t.cart.itemCount))},directives:[u.j,Q.c],pipes:[u.c],encapsulation:2}),pe),ge=((ve=function(){function e(t,n){_classCallCheck(this,e),this.container=t,this.template=n}return _createClass(e,[{key:"ngOnChanges",value:function(e){this.container.clear();for(var t=0;t1?Array.prototype.slice.call(arguments):e)}),r,n)}))}var Qe,Je,Ke,Xe=n("LRne"),$e=n("GyhO"),Ye=n("KqfI"),et=new He.a(Ye.a),tt=n("VRyK"),nt=n("pLZG"),rt=n("eIep"),it=n("oB13"),ot=n("IzEk"),at=n("vkgz"),st=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,n))).scheduler=e,r.work=n,r.pending=!1,r}return _inherits(t,e),_createClass(t,[{key:"schedule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(this.closed)return this;this.state=e;var n=this.id,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,t)),this.pending=!0,this.delay=t,this.id=this.id||this.requestAsyncId(r,this.id,t),this}},{key:"requestAsyncId",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return setInterval(e.flush.bind(e,this),n)}},{key:"recycleAsyncId",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==n&&this.delay===n&&!1===this.pending)return t;clearInterval(t)}},{key:"execute",value:function(e,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var n=this._execute(e,t);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}},{key:"_execute",value:function(e,t){var n=!1,r=void 0;try{this.work(e)}catch(i){n=!0,r=!!i&&i||new Error(i)}if(n)return this.unsubscribe(),r}},{key:"_unsubscribe",value:function(){var e=this.id,t=this.scheduler,n=t.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,1),null!=e&&(this.id=this.recycleAsyncId(t,e,null)),this.delay=null}}]),t}(function(e){function t(e,n){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"schedule",value:function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this}}]),t}(n("quSY").a)),ut=function(){var e=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.now;_classCallCheck(this,e),this.SchedulerAction=t,this.now=n}return _createClass(e,[{key:"schedule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0;return new this.SchedulerAction(this,e).schedule(n,t)}}]),e}();return e.now=function(){return Date.now()},e}(),ct=new(function(e){function t(e){var n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ut.now;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e,(function(){return t.delegate&&t.delegate!==_assertThisInitialized(n)?t.delegate.now():r()})))).actions=[],n.active=!1,n.scheduled=void 0,n}return _inherits(t,e),_createClass(t,[{key:"schedule",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2?arguments[2]:void 0;return t.delegate&&t.delegate!==this?t.delegate.schedule(e,n,r):_get(_getPrototypeOf(t.prototype),"schedule",this).call(this,e,n,r)}},{key:"flush",value:function(e){var t=this.actions;if(this.active)t.push(e);else{var n;this.active=!0;do{if(n=e.execute(e.state,e.delay))break}while(e=t.shift());if(this.active=!1,n){for(;e=t.shift();)e.unsubscribe();throw n}}}}]),t}(ut))(st),lt=n("7o/Q"),ht=n("EY2u"),ft=((Qe=function(){function e(t,n,r){_classCallCheck(this,e),this.kind=t,this.value=n,this.error=r,this.hasValue="N"===t}return _createClass(e,[{key:"observe",value:function(e){switch(this.kind){case"N":return e.next&&e.next(this.value);case"E":return e.error&&e.error(this.error);case"C":return e.complete&&e.complete()}}},{key:"do",value:function(e,t,n){switch(this.kind){case"N":return e&&e(this.value);case"E":return t&&t(this.error);case"C":return n&&n()}}},{key:"accept",value:function(e,t,n){return e&&"function"==typeof e.next?this.observe(e):this.do(e,t,n)}},{key:"toObservable",value:function(){switch(this.kind){case"N":return Object(Xe.a)(this.value);case"E":return ze(this.error);case"C":return Object(ht.b)()}throw new Error("unexpected notification kind value")}}],[{key:"createNext",value:function(t){return void 0!==t?new e("N",t):e.undefinedValueNotification}},{key:"createError",value:function(t){return new e("E",void 0,t)}},{key:"createComplete",value:function(){return e.completeNotification}}]),e}()).completeNotification=new Qe("C"),Qe.undefinedValueNotification=new Qe("N",void 0),Qe),dt=function(){function e(t,n){_classCallCheck(this,e),this.delay=t,this.scheduler=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new vt(e,this.delay,this.scheduler))}}]),e}(),vt=function(e){function t(e,n,r){var i;return _classCallCheck(this,t),(i=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).delay=n,i.scheduler=r,i.queue=[],i.active=!1,i.errored=!1,i}return _inherits(t,e),_createClass(t,[{key:"_schedule",value:function(e){this.active=!0,this.destination.add(e.schedule(t.dispatch,this.delay,{source:this,destination:this.destination,scheduler:e}))}},{key:"scheduleNotification",value:function(e){if(!0!==this.errored){var t=this.scheduler,n=new pt(t.now()+this.delay,e);this.queue.push(n),!1===this.active&&this._schedule(t)}}},{key:"_next",value:function(e){this.scheduleNotification(ft.createNext(e))}},{key:"_error",value:function(e){this.errored=!0,this.queue=[],this.destination.error(e),this.unsubscribe()}},{key:"_complete",value:function(){this.scheduleNotification(ft.createComplete()),this.unsubscribe()}}],[{key:"dispatch",value:function(e){for(var t=e.source,n=t.queue,r=e.scheduler,i=e.destination;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(i);if(n.length>0){var o=Math.max(0,n[0].time-r.now());this.schedule(e,o)}else this.unsubscribe(),t.active=!1}}]),t}(lt.a),pt=function e(t,n){_classCallCheck(this,e),this.time=t,this.notification=n},yt="Service workers are disabled or not supported by this browser",gt=function(){function e(t){if(_classCallCheck(this,e),this.serviceWorker=t,t){var n=Ze(t,"controllerchange").pipe(Object(We.a)((function(){return t.controller}))),r=Object(Fe.a)((function(){return Object(Xe.a)(t.controller)})),i=Object($e.a)(r,n);this.worker=i.pipe(Object(nt.a)((function(e){return!!e}))),this.registration=this.worker.pipe(Object(rt.a)((function(){return t.getRegistration()})));var o=Ze(t,"message").pipe(Object(We.a)((function(e){return e.data}))).pipe(Object(nt.a)((function(e){return e&&e.type}))).pipe(Object(it.a)(new ue.a));o.connect(),this.events=o}else this.worker=this.events=this.registration=Object(Fe.a)((function(){return ze(new Error("Service workers are disabled or not supported by this browser"))}))}return _createClass(e,[{key:"postMessage",value:function(e,t){return this.worker.pipe(Object(ot.a)(1),Object(at.a)((function(n){n.postMessage(Object.assign({action:e},t))}))).toPromise().then((function(){}))}},{key:"postMessageWithStatus",value:function(e,t,n){var r=this.waitForStatus(n),i=this.postMessage(e,t);return Promise.all([r,i]).then((function(){}))}},{key:"generateNonce",value:function(){return Math.round(1e7*Math.random())}},{key:"eventsOfType",value:function(e){return this.events.pipe(Object(nt.a)((function(t){return t.type===e})))}},{key:"nextEventOfType",value:function(e){return this.eventsOfType(e).pipe(Object(ot.a)(1))}},{key:"waitForStatus",value:function(e){return this.eventsOfType("STATUS").pipe(Object(nt.a)((function(t){return t.nonce===e})),Object(ot.a)(1),Object(We.a)((function(e){if(!e.status)throw new Error(e.error)}))).toPromise()}},{key:"isEnabled",get:function(){return!!this.serviceWorker}}]),e}(),mt=((Ke=function(){function e(t){if(_classCallCheck(this,e),this.sw=t,this.subscriptionChanges=new ue.a,!t.isEnabled)return this.messages=et,this.notificationClicks=et,void(this.subscription=et);this.messages=this.sw.eventsOfType("PUSH").pipe(Object(We.a)((function(e){return e.data}))),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(Object(We.a)((function(e){return e.data}))),this.pushManager=this.sw.registration.pipe(Object(We.a)((function(e){return e.pushManager})));var n=this.pushManager.pipe(Object(rt.a)((function(e){return e.getSubscription()})));this.subscription=Object(tt.a)(n,this.subscriptionChanges)}return _createClass(e,[{key:"requestSubscription",value:function(e){var t=this;if(!this.sw.isEnabled)return Promise.reject(new Error(yt));for(var n={userVisibleOnly:!0},r=this.decodeBase64(e.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),i=new Uint8Array(new ArrayBuffer(r.length)),o=0;o1&&void 0!==arguments[1]?arguments[1]:ct,r=(t=e)instanceof Date&&!isNaN(+t)?+e-n.now():Math.abs(e);return function(e){return e.lift(new dt(r,n))}}(+c[0]||0));break;case"registerWhenStable":i=e.get(s.g).isStable.pipe(Object(nt.a)((function(e){return e})));break;default:throw new Error("Unknown ServiceWorker registration strategy: ".concat(n.registrationStrategy))}}i.pipe(Object(ot.a)(1)).subscribe((function(){return navigator.serviceWorker.register(t,{scope:n.scope}).catch((function(e){return console.error("Service worker registration failed with:",e)}))}))}}}function wt(e,t){return new gt(Object(u.n)(t)&&!1!==e.enabled?navigator.serviceWorker:void 0)}var Ot,St,Et=((St=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"register",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return{ngModule:e,providers:[{provide:Ct,useValue:t},{provide:_t,useValue:n},{provide:gt,useFactory:wt,deps:[_t,s.B]},{provide:s.d,useFactory:kt,deps:[s.r,Ct,_t,s.B],multi:!0}]}}}]),e}()).\u0275mod=s.Hb({type:St}),St.\u0275inj=s.Gb({factory:function(e){return new(e||St)},providers:[mt,bt]}),St),xt=((Ot=function e(){_classCallCheck(this,e)}).\u0275mod=s.Hb({type:Ot,bootstrap:[J]}),Ot.\u0275inj=s.Gb({factory:function(e){return new(e||Ot)},providers:[Ue],imports:[[F,he,Q.e.forRoot([{path:"store",component:we,canActivate:[Ue]},{path:"cart",component:Ve,canActivate:[Ue]},{path:"checkout",component:Ie,canActivate:[Ue]},{path:"admin",loadChildren:function(){return n.e(5).then(n.bind(null,"jkDv")).then((function(e){return e.AdminModule}))},canActivate:[Ue]},{path:"**",redirectTo:"/store"}]),Et.register("ngsw-worker.js",{enabled:!0})]]}),Ot);Object(s.R)(),V().bootstrapModule(xt).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/manifest.webmanifest ================================================ { "name": "SportsStore", "short_name": "SportsStore", "theme_color": "#1976d2", "background_color": "#fafafa", "display": "standalone", "scope": "/", "start_url": "/", "icons": [ { "src": "assets/icons/icon-72x72.png", "sizes": "72x72", "type": "image/png" }, { "src": "assets/icons/icon-96x96.png", "sizes": "96x96", "type": "image/png" }, { "src": "assets/icons/icon-128x128.png", "sizes": "128x128", "type": "image/png" }, { "src": "assets/icons/icon-144x144.png", "sizes": "144x144", "type": "image/png" }, { "src": "assets/icons/icon-152x152.png", "sizes": "152x152", "type": "image/png" }, { "src": "assets/icons/icon-192x192.png", "sizes": "192x192", "type": "image/png" }, { "src": "assets/icons/icon-384x384.png", "sizes": "384x384", "type": "image/png" }, { "src": "assets/icons/icon-512x512.png", "sizes": "512x512", "type": "image/png" } ] } ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/ngsw-worker.js ================================================ (function () { '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 */ /** * Adapts the service worker to its runtime environment. * * Mostly, this is used to mock out identifiers which are otherwise read * from the global scope. */ class Adapter { constructor(scope) { // Suffixing `ngsw` with the baseHref to avoid clash of cache names // for SWs with different scopes on the same domain. const baseHref = this.parseUrl(scope.registration.scope).path; this.cacheNamePrefix = 'ngsw:' + baseHref; } /** * Wrapper around the `Request` constructor. */ newRequest(input, init) { return new Request(input, init); } /** * Wrapper around the `Response` constructor. */ newResponse(body, init) { return new Response(body, init); } /** * Wrapper around the `Headers` constructor. */ newHeaders(headers) { return new Headers(headers); } /** * Test if a given object is an instance of `Client`. */ isClient(source) { return (source instanceof Client); } /** * Read the current UNIX time in milliseconds. */ get time() { return Date.now(); } /** * Extract the pathname of a URL. */ parseUrl(url, relativeTo) { // Workaround a Safari bug, see // https://github.com/angular/angular/issues/31061#issuecomment-503637978 const parsed = !relativeTo ? new URL(url) : new URL(url, relativeTo); return { origin: parsed.origin, path: parsed.pathname, search: parsed.search }; } /** * Wait for a given amount of time before completing a Promise. */ timeout(ms) { return new Promise(resolve => { setTimeout(() => resolve(), ms); }); } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * An error returned in rejected promises if the given key is not found in the table. */ class NotFound { constructor(table, key) { this.table = table; this.key = key; } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * An implementation of a `Database` that uses the `CacheStorage` API to serialize * state within mock `Response` objects. */ class CacheDatabase { constructor(scope, adapter) { this.scope = scope; this.adapter = adapter; this.tables = new Map(); } 'delete'(name) { if (this.tables.has(name)) { this.tables.delete(name); } return this.scope.caches.delete(`${this.adapter.cacheNamePrefix}:db:${name}`); } list() { return this.scope.caches.keys().then(keys => keys.filter(key => key.startsWith(`${this.adapter.cacheNamePrefix}:db:`))); } open(name) { if (!this.tables.has(name)) { const table = this.scope.caches.open(`${this.adapter.cacheNamePrefix}:db:${name}`) .then(cache => new CacheTable(name, cache, this.adapter)); this.tables.set(name, table); } return this.tables.get(name); } } /** * A `Table` backed by a `Cache`. */ class CacheTable { constructor(table, cache, adapter) { this.table = table; this.cache = cache; this.adapter = adapter; } request(key) { return this.adapter.newRequest('/' + key); } 'delete'(key) { return this.cache.delete(this.request(key)); } keys() { return this.cache.keys().then(requests => requests.map(req => req.url.substr(1))); } read(key) { return this.cache.match(this.request(key)).then(res => { if (res === undefined) { return Promise.reject(new NotFound(this.table, key)); } return res.json(); }); } write(key, value) { return this.cache.put(this.request(key), this.adapter.newResponse(JSON.stringify(value))); } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ var UpdateCacheStatus; (function (UpdateCacheStatus) { UpdateCacheStatus[UpdateCacheStatus["NOT_CACHED"] = 0] = "NOT_CACHED"; UpdateCacheStatus[UpdateCacheStatus["CACHED_BUT_UNUSED"] = 1] = "CACHED_BUT_UNUSED"; UpdateCacheStatus[UpdateCacheStatus["CACHED"] = 2] = "CACHED"; })(UpdateCacheStatus || (UpdateCacheStatus = {})); /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ class SwCriticalError extends Error { constructor() { super(...arguments); this.isCritical = true; } } function errorToString(error) { if (error instanceof Error) { return `${error.message}\n${error.stack}`; } else { return `${error}`; } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * Compute the SHA1 of the given string * * see http://csrc.nist.gov/publications/fips/fips180-4/fips-180-4.pdf * * WARNING: this function has not been designed not tested with security in mind. * DO NOT USE IT IN A SECURITY SENSITIVE CONTEXT. * * Borrowed from @angular/compiler/src/i18n/digest.ts */ function sha1(str) { const utf8 = str; const words32 = stringToWords32(utf8, Endian.Big); return _sha1(words32, utf8.length * 8); } function sha1Binary(buffer) { const words32 = arrayBufferToWords32(buffer, Endian.Big); return _sha1(words32, buffer.byteLength * 8); } function _sha1(words32, len) { const w = []; let [a, b, c, d, e] = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0]; words32[len >> 5] |= 0x80 << (24 - len % 32); words32[((len + 64 >> 9) << 4) + 15] = len; for (let i = 0; i < words32.length; i += 16) { const [h0, h1, h2, h3, h4] = [a, b, c, d, e]; for (let j = 0; j < 80; j++) { if (j < 16) { w[j] = words32[i + j]; } else { w[j] = rol32(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1); } const [f, k] = fk(j, b, c, d); const temp = [rol32(a, 5), f, e, k, w[j]].reduce(add32); [e, d, c, b, a] = [d, c, rol32(b, 30), a, temp]; } [a, b, c, d, e] = [add32(a, h0), add32(b, h1), add32(c, h2), add32(d, h3), add32(e, h4)]; } return byteStringToHexString(words32ToByteString([a, b, c, d, e])); } function add32(a, b) { return add32to64(a, b)[1]; } function add32to64(a, b) { const low = (a & 0xffff) + (b & 0xffff); const high = (a >>> 16) + (b >>> 16) + (low >>> 16); return [high >>> 16, (high << 16) | (low & 0xffff)]; } // Rotate a 32b number left `count` position function rol32(a, count) { return (a << count) | (a >>> (32 - count)); } var Endian; (function (Endian) { Endian[Endian["Little"] = 0] = "Little"; Endian[Endian["Big"] = 1] = "Big"; })(Endian || (Endian = {})); function fk(index, b, c, d) { if (index < 20) { return [(b & c) | (~b & d), 0x5a827999]; } if (index < 40) { return [b ^ c ^ d, 0x6ed9eba1]; } if (index < 60) { return [(b & c) | (b & d) | (c & d), 0x8f1bbcdc]; } return [b ^ c ^ d, 0xca62c1d6]; } function stringToWords32(str, endian) { const size = (str.length + 3) >>> 2; const words32 = []; for (let i = 0; i < size; i++) { words32[i] = wordAt(str, i * 4, endian); } return words32; } function arrayBufferToWords32(buffer, endian) { const size = (buffer.byteLength + 3) >>> 2; const words32 = []; const view = new Uint8Array(buffer); for (let i = 0; i < size; i++) { words32[i] = wordAt(view, i * 4, endian); } return words32; } function byteAt(str, index) { if (typeof str === 'string') { return index >= str.length ? 0 : str.charCodeAt(index) & 0xff; } else { return index >= str.byteLength ? 0 : str[index] & 0xff; } } function wordAt(str, index, endian) { let word = 0; if (endian === Endian.Big) { for (let i = 0; i < 4; i++) { word += byteAt(str, index + i) << (24 - 8 * i); } } else { for (let i = 0; i < 4; i++) { word += byteAt(str, index + i) << 8 * i; } } return word; } function words32ToByteString(words32) { return words32.reduce((str, word) => str + word32ToByteString(word), ''); } function word32ToByteString(word) { let str = ''; for (let i = 0; i < 4; i++) { str += String.fromCharCode((word >>> 8 * (3 - i)) & 0xff); } return str; } function byteStringToHexString(str) { let hex = ''; for (let i = 0; i < str.length; i++) { const b = byteAt(str, i); hex += (b >>> 4).toString(16) + (b & 0x0f).toString(16); } return hex.toLowerCase(); } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; /** * A group of assets that are cached in a `Cache` and managed by a given policy. * * Concrete classes derive from this base and specify the exact caching policy. */ class AssetGroup { constructor(scope, adapter, idle, config, hashes, db, prefix) { this.scope = scope; this.adapter = adapter; this.idle = idle; this.config = config; this.hashes = hashes; this.db = db; this.prefix = prefix; /** * A deduplication cache, to make sure the SW never makes two network requests * for the same resource at once. Managed by `fetchAndCacheOnce`. */ this.inFlightRequests = new Map(); /** * Regular expression patterns. */ this.patterns = []; this.name = config.name; // Patterns in the config are regular expressions disguised as strings. Breathe life into them. this.patterns = this.config.patterns.map(pattern => new RegExp(pattern)); // This is the primary cache, which holds all of the cached requests for this group. If a // resource // isn't in this cache, it hasn't been fetched yet. this.cache = this.scope.caches.open(`${this.prefix}:${this.config.name}:cache`); // This is the metadata table, which holds specific information for each cached URL, such as // the timestamp of when it was added to the cache. this.metadata = this.db.open(`${this.prefix}:${this.config.name}:meta`); // Determine the origin from the registration scope. This is used to differentiate between // relative and absolute URLs. this.origin = this.adapter.parseUrl(this.scope.registration.scope).origin; } cacheStatus(url) { return __awaiter(this, void 0, void 0, function* () { const cache = yield this.cache; const meta = yield this.metadata; const res = yield cache.match(this.adapter.newRequest(url)); if (res === undefined) { return UpdateCacheStatus.NOT_CACHED; } try { const data = yield meta.read(url); if (!data.used) { return UpdateCacheStatus.CACHED_BUT_UNUSED; } } catch (_) { // Error on the side of safety and assume cached. } return UpdateCacheStatus.CACHED; }); } /** * Clean up all the cached data for this group. */ cleanup() { return __awaiter(this, void 0, void 0, function* () { yield this.scope.caches.delete(`${this.prefix}:${this.config.name}:cache`); yield this.db.delete(`${this.prefix}:${this.config.name}:meta`); }); } /** * Process a request for a given resource and return it, or return null if it's not available. */ handleFetch(req, ctx) { return __awaiter(this, void 0, void 0, function* () { const url = this.getConfigUrl(req.url); // Either the request matches one of the known resource URLs, one of the patterns for // dynamically matched URLs, or neither. Determine which is the case for this request in // order to decide how to handle it. if (this.config.urls.indexOf(url) !== -1 || this.patterns.some(pattern => pattern.test(url))) { // This URL matches a known resource. Either it's been cached already or it's missing, in // which case it needs to be loaded from the network. // Open the cache to check whether this resource is present. const cache = yield this.cache; // Look for a cached response. If one exists, it can be used to resolve the fetch // operation. const cachedResponse = yield cache.match(req); if (cachedResponse !== undefined) { // A response has already been cached (which presumably matches the hash for this // resource). Check whether it's safe to serve this resource from cache. if (this.hashes.has(url)) { // This resource has a hash, and thus is versioned by the manifest. It's safe to return // the response. return cachedResponse; } else { // This resource has no hash, and yet exists in the cache. Check how old this request is // to make sure it's still usable. if (yield this.needToRevalidate(req, cachedResponse)) { this.idle.schedule(`revalidate(${this.prefix}, ${this.config.name}): ${req.url}`, () => __awaiter(this, void 0, void 0, function* () { yield this.fetchAndCacheOnce(req); })); } // In either case (revalidation or not), the cached response must be good. return cachedResponse; } } // No already-cached response exists, so attempt a fetch/cache operation. The original request // may specify things like credential inclusion, but for assets these are not honored in order // to avoid issues with opaque responses. The SW requests the data itself. const res = yield this.fetchAndCacheOnce(this.adapter.newRequest(req.url)); // If this is successful, the response needs to be cloned as it might be used to respond to // multiple fetch operations at the same time. return res.clone(); } else { return null; } }); } getConfigUrl(url) { // If the URL is relative to the SW's own origin, then only consider the path relative to // the domain root. Determine this by checking the URL's origin against the SW's. const parsed = this.adapter.parseUrl(url, this.scope.registration.scope); if (parsed.origin === this.origin) { // The URL is relative to the SW's origin domain. return parsed.path; } else { return url; } } /** * Some resources are cached without a hash, meaning that their expiration is controlled * by HTTP caching headers. Check whether the given request/response pair is still valid * per the caching headers. */ needToRevalidate(req, res) { return __awaiter(this, void 0, void 0, function* () { // Three different strategies apply here: // 1) The request has a Cache-Control header, and thus expiration needs to be based on its age. // 2) The request has an Expires header, and expiration is based on the current timestamp. // 3) The request has no applicable caching headers, and must be revalidated. if (res.headers.has('Cache-Control')) { // Figure out if there is a max-age directive in the Cache-Control header. const cacheControl = res.headers.get('Cache-Control'); const cacheDirectives = cacheControl // Directives are comma-separated within the Cache-Control header value. .split(',') // Make sure each directive doesn't have extraneous whitespace. .map(v => v.trim()) // Some directives have values (like maxage and s-maxage) .map(v => v.split('=')); // Lowercase all the directive names. cacheDirectives.forEach(v => v[0] = v[0].toLowerCase()); // Find the max-age directive, if one exists. const maxAgeDirective = cacheDirectives.find(v => v[0] === 'max-age'); const cacheAge = maxAgeDirective ? maxAgeDirective[1] : undefined; if (!cacheAge) { // No usable TTL defined. Must assume that the response is stale. return true; } try { const maxAge = 1000 * parseInt(cacheAge); // Determine the origin time of this request. If the SW has metadata on the request (which // it // should), it will have the time the request was added to the cache. If it doesn't for some // reason, the request may have a Date header which will serve the same purpose. let ts; try { // Check the metadata table. If a timestamp is there, use it. const metaTable = yield this.metadata; ts = (yield metaTable.read(req.url)).ts; } catch (_a) { // Otherwise, look for a Date header. const date = res.headers.get('Date'); if (date === null) { // Unable to determine when this response was created. Assume that it's stale, and // revalidate it. return true; } ts = Date.parse(date); } const age = this.adapter.time - ts; return age < 0 || age > maxAge; } catch (_b) { // Assume stale. return true; } } else if (res.headers.has('Expires')) { // Determine if the expiration time has passed. const expiresStr = res.headers.get('Expires'); try { // The request needs to be revalidated if the current time is later than the expiration // time, if it parses correctly. return this.adapter.time > Date.parse(expiresStr); } catch (_c) { // The expiration date failed to parse, so revalidate as a precaution. return true; } } else { // No way to evaluate staleness, so assume the response is already stale. return true; } }); } /** * Fetch the complete state of a cached resource, or return null if it's not found. */ fetchFromCacheOnly(url) { return __awaiter(this, void 0, void 0, function* () { const cache = yield this.cache; const metaTable = yield this.metadata; // Lookup the response in the cache. const response = yield cache.match(this.adapter.newRequest(url)); if (response === undefined) { // It's not found, return null. return null; } // Next, lookup the cached metadata. let metadata = undefined; try { metadata = yield metaTable.read(url); } catch (_a) { // Do nothing, not found. This shouldn't happen, but it can be handled. } // Return both the response and any available metadata. return { response, metadata }; }); } /** * Lookup all resources currently stored in the cache which have no associated hash. */ unhashedResources() { return __awaiter(this, void 0, void 0, function* () { const cache = yield this.cache; // Start with the set of all cached URLs. return (yield cache.keys()) .map(request => request.url) // Exclude the URLs which have hashes. .filter(url => !this.hashes.has(url)); }); } /** * Fetch the given resource from the network, and cache it if able. */ fetchAndCacheOnce(req, used = true) { return __awaiter(this, void 0, void 0, function* () { // The `inFlightRequests` map holds information about which caching operations are currently // underway for known resources. If this request appears there, another "thread" is already // in the process of caching it, and this work should not be duplicated. if (this.inFlightRequests.has(req.url)) { // There is a caching operation already in progress for this request. Wait for it to // complete, and hopefully it will have yielded a useful response. return this.inFlightRequests.get(req.url); } // No other caching operation is being attempted for this resource, so it will be owned here. // Go to the network and get the correct version. const fetchOp = this.fetchFromNetwork(req); // Save this operation in `inFlightRequests` so any other "thread" attempting to cache it // will block on this chain instead of duplicating effort. this.inFlightRequests.set(req.url, fetchOp); // Make sure this attempt is cleaned up properly on failure. try { // Wait for a response. If this fails, the request will remain in `inFlightRequests` // indefinitely. const res = yield fetchOp; // It's very important that only successful responses are cached. Unsuccessful responses // should never be cached as this can completely break applications. if (!res.ok) { throw new Error(`Response not Ok (fetchAndCacheOnce): request for ${req.url} returned response ${res.status} ${res.statusText}`); } try { // This response is safe to cache (as long as it's cloned). Wait until the cache operation // is complete. const cache = yield this.scope.caches.open(`${this.prefix}:${this.config.name}:cache`); yield cache.put(req, res.clone()); // If the request is not hashed, update its metadata, especially the timestamp. This is // needed for future determination of whether this cached response is stale or not. if (!this.hashes.has(req.url)) { // Metadata is tracked for requests that are unhashed. const meta = { ts: this.adapter.time, used }; const metaTable = yield this.metadata; yield metaTable.write(req.url, meta); } return res; } catch (err) { // Among other cases, this can happen when the user clears all data through the DevTools, // but the SW is still running and serving another tab. In that case, trying to write to the // caches throws an `Entry was not found` error. // If this happens the SW can no longer work correctly. This situation is unrecoverable. throw new SwCriticalError(`Failed to update the caches for request to '${req.url}' (fetchAndCacheOnce): ${errorToString(err)}`); } } finally { // Finally, it can be removed from `inFlightRequests`. This might result in a double-remove // if some other chain was already making this request too, but that won't hurt anything. this.inFlightRequests.delete(req.url); } }); } fetchFromNetwork(req, redirectLimit = 3) { return __awaiter(this, void 0, void 0, function* () { // Make a cache-busted request for the resource. const res = yield this.cacheBustedFetchFromNetwork(req); // Check for redirected responses, and follow the redirects. if (res['redirected'] && !!res.url) { // If the redirect limit is exhausted, fail with an error. if (redirectLimit === 0) { throw new SwCriticalError(`Response hit redirect limit (fetchFromNetwork): request redirected too many times, next is ${res.url}`); } // Unwrap the redirect directly. return this.fetchFromNetwork(this.adapter.newRequest(res.url), redirectLimit - 1); } return res; }); } /** * Load a particular asset from the network, accounting for hash validation. */ cacheBustedFetchFromNetwork(req) { return __awaiter(this, void 0, void 0, function* () { const url = this.getConfigUrl(req.url); // If a hash is available for this resource, then compare the fetched version with the // canonical hash. Otherwise, the network version will have to be trusted. if (this.hashes.has(url)) { // It turns out this resource does have a hash. Look it up. Unless the fetched version // matches this hash, it's invalid and the whole manifest may need to be thrown out. const canonicalHash = this.hashes.get(url); // Ideally, the resource would be requested with cache-busting to guarantee the SW gets // the freshest version. However, doing this would eliminate any chance of the response // being in the HTTP cache. Given that the browser has recently actively loaded the page, // it's likely that many of the responses the SW needs to cache are in the HTTP cache and // are fresh enough to use. In the future, this could be done by setting cacheMode to // *only* check the browser cache for a cached version of the resource, when cacheMode is // fully supported. For now, the resource is fetched directly, without cache-busting, and // if the hash test fails a cache-busted request is tried before concluding that the // resource isn't correct. This gives the benefit of acceleration via the HTTP cache // without the risk of stale data, at the expense of a duplicate request in the event of // a stale response. // Fetch the resource from the network (possibly hitting the HTTP cache). const networkResult = yield this.safeFetch(req); // Decide whether a cache-busted request is necessary. It might be for two independent // reasons: either the non-cache-busted request failed (hopefully transiently) or if the // hash of the content retrieved does not match the canonical hash from the manifest. It's // only valid to access the content of the first response if the request was successful. let makeCacheBustedRequest = networkResult.ok; if (makeCacheBustedRequest) { // The request was successful. A cache-busted request is only necessary if the hashes // don't match. Compare them, making sure to clone the response so it can be used later // if it proves to be valid. const fetchedHash = sha1Binary(yield networkResult.clone().arrayBuffer()); makeCacheBustedRequest = (fetchedHash !== canonicalHash); } // Make a cache busted request to the network, if necessary. if (makeCacheBustedRequest) { // Hash failure, the version that was retrieved under the default URL did not have the // hash expected. This could be because the HTTP cache got in the way and returned stale // data, or because the version on the server really doesn't match. A cache-busting // request will differentiate these two situations. // TODO: handle case where the URL has parameters already (unlikely for assets). const cacheBustReq = this.adapter.newRequest(this.cacheBust(req.url)); const cacheBustedResult = yield this.safeFetch(cacheBustReq); // If the response was unsuccessful, there's nothing more that can be done. if (!cacheBustedResult.ok) { throw new SwCriticalError(`Response not Ok (cacheBustedFetchFromNetwork): cache busted request for ${req.url} returned response ${cacheBustedResult.status} ${cacheBustedResult.statusText}`); } // Hash the contents. const cacheBustedHash = sha1Binary(yield cacheBustedResult.clone().arrayBuffer()); // If the cache-busted version doesn't match, then the manifest is not an accurate // representation of the server's current set of files, and the SW should give up. if (canonicalHash !== cacheBustedHash) { throw new SwCriticalError(`Hash mismatch (cacheBustedFetchFromNetwork): ${req.url}: expected ${canonicalHash}, got ${cacheBustedHash} (after cache busting)`); } // If it does match, then use the cache-busted result. return cacheBustedResult; } // Excellent, the version from the network matched on the first try, with no need for // cache-busting. Use it. return networkResult; } else { // This URL doesn't exist in our hash database, so it must be requested directly. return this.safeFetch(req); } }); } /** * Possibly update a resource, if it's expired and needs to be updated. A no-op otherwise. */ maybeUpdate(updateFrom, req, cache) { return __awaiter(this, void 0, void 0, function* () { const url = this.getConfigUrl(req.url); const meta = yield this.metadata; // Check if this resource is hashed and already exists in the cache of a prior version. if (this.hashes.has(url)) { const hash = this.hashes.get(url); // Check the caches of prior versions, using the hash to ensure the correct version of // the resource is loaded. const res = yield updateFrom.lookupResourceWithHash(url, hash); // If a previously cached version was available, copy it over to this cache. if (res !== null) { // Copy to this cache. yield cache.put(req, res); yield meta.write(req.url, { ts: this.adapter.time, used: false }); // No need to do anything further with this resource, it's now cached properly. return true; } } // No up-to-date version of this resource could be found. return false; }); } /** * Construct a cache-busting URL for a given URL. */ cacheBust(url) { return url + (url.indexOf('?') === -1 ? '?' : '&') + 'ngsw-cache-bust=' + Math.random(); } safeFetch(req) { return __awaiter(this, void 0, void 0, function* () { try { return yield this.scope.fetch(req); } catch (_a) { return this.adapter.newResponse('', { status: 504, statusText: 'Gateway Timeout', }); } }); } } /** * An `AssetGroup` that prefetches all of its resources during initialization. */ class PrefetchAssetGroup extends AssetGroup { initializeFully(updateFrom) { return __awaiter(this, void 0, void 0, function* () { // Open the cache which actually holds requests. const cache = yield this.cache; // Cache all known resources serially. As this reduce proceeds, each Promise waits // on the last before starting the fetch/cache operation for the next request. Any // errors cause fall-through to the final Promise which rejects. yield this.config.urls.reduce((previous, url) => __awaiter(this, void 0, void 0, function* () { // Wait on all previous operations to complete. yield previous; // Construct the Request for this url. const req = this.adapter.newRequest(url); // First, check the cache to see if there is already a copy of this resource. const alreadyCached = (yield cache.match(req)) !== undefined; // If the resource is in the cache already, it can be skipped. if (alreadyCached) { return; } // If an update source is available. if (updateFrom !== undefined && (yield this.maybeUpdate(updateFrom, req, cache))) { return; } // Otherwise, go to the network and hopefully cache the response (if successful). yield this.fetchAndCacheOnce(req, false); }), Promise.resolve()); // Handle updating of unknown (unhashed) resources. This is only possible if there's // a source to update from. if (updateFrom !== undefined) { const metaTable = yield this.metadata; // Select all of the previously cached resources. These are cached unhashed resources // from previous versions of the app, in any asset group. yield (yield updateFrom.previouslyCachedResources()) // First, narrow down the set of resources to those which are handled by this group. // Either it's a known URL, or it matches a given pattern. .filter(url => this.config.urls.some(cacheUrl => cacheUrl === url) || this.patterns.some(pattern => pattern.test(url))) // Finally, process each resource in turn. .reduce((previous, url) => __awaiter(this, void 0, void 0, function* () { yield previous; const req = this.adapter.newRequest(url); // It's possible that the resource in question is already cached. If so, // continue to the next one. const alreadyCached = ((yield cache.match(req)) !== undefined); if (alreadyCached) { return; } // Get the most recent old version of the resource. const res = yield updateFrom.lookupResourceWithoutHash(url); if (res === null || res.metadata === undefined) { // Unexpected, but not harmful. return; } // Write it into the cache. It may already be expired, but it can still serve // traffic until it's updated (stale-while-revalidate approach). yield cache.put(req, res.response); yield metaTable.write(url, Object.assign(Object.assign({}, res.metadata), { used: false })); }), Promise.resolve()); } }); } } class LazyAssetGroup extends AssetGroup { initializeFully(updateFrom) { return __awaiter(this, void 0, void 0, function* () { // No action necessary if no update source is available - resources managed in this group // are all lazily loaded, so there's nothing to initialize. if (updateFrom === undefined) { return; } // Open the cache which actually holds requests. const cache = yield this.cache; // Loop through the listed resources, caching any which are available. yield this.config.urls.reduce((previous, url) => __awaiter(this, void 0, void 0, function* () { // Wait on all previous operations to complete. yield previous; // Construct the Request for this url. const req = this.adapter.newRequest(url); // First, check the cache to see if there is already a copy of this resource. const alreadyCached = (yield cache.match(req)) !== undefined; // If the resource is in the cache already, it can be skipped. if (alreadyCached) { return; } const updated = yield this.maybeUpdate(updateFrom, req, cache); if (this.config.updateMode === 'prefetch' && !updated) { // If the resource was not updated, either it was not cached before or // the previously cached version didn't match the updated hash. In that // case, prefetch update mode dictates that the resource will be updated, // except if it was not previously utilized. Check the status of the // cached resource to see. const cacheStatus = yield updateFrom.recentCacheStatus(url); // If the resource is not cached, or was cached but unused, then it will be // loaded lazily. if (cacheStatus !== UpdateCacheStatus.CACHED) { return; } // Update from the network. yield this.fetchAndCacheOnce(req, false); } }), Promise.resolve()); }); } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ var __awaiter$1 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; /** * Manages an instance of `LruState` and moves URLs to the head of the * chain when requested. */ class LruList { constructor(state) { if (state === undefined) { state = { head: null, tail: null, map: {}, count: 0, }; } this.state = state; } /** * The current count of URLs in the list. */ get size() { return this.state.count; } /** * Remove the tail. */ pop() { // If there is no tail, return null. if (this.state.tail === null) { return null; } const url = this.state.tail; this.remove(url); // This URL has been successfully evicted. return url; } remove(url) { const node = this.state.map[url]; if (node === undefined) { return false; } // Special case if removing the current head. if (this.state.head === url) { // The node is the current head. Special case the removal. if (node.next === null) { // This is the only node. Reset the cache to be empty. this.state.head = null; this.state.tail = null; this.state.map = {}; this.state.count = 0; return true; } // There is at least one other node. Make the next node the new head. const next = this.state.map[node.next]; next.previous = null; this.state.head = next.url; node.next = null; delete this.state.map[url]; this.state.count--; return true; } // The node is not the head, so it has a previous. It may or may not be the tail. // If it is not, then it has a next. First, grab the previous node. const previous = this.state.map[node.previous]; // Fix the forward pointer to skip over node and go directly to node.next. previous.next = node.next; // node.next may or may not be set. If it is, fix the back pointer to skip over node. // If it's not set, then this node happened to be the tail, and the tail needs to be // updated to point to the previous node (removing the tail). if (node.next !== null) { // There is a next node, fix its back pointer to skip this node. this.state.map[node.next].previous = node.previous; } else { // There is no next node - the accessed node must be the tail. Move the tail pointer. this.state.tail = node.previous; } node.next = null; node.previous = null; delete this.state.map[url]; // Count the removal. this.state.count--; return true; } accessed(url) { // When a URL is accessed, its node needs to be moved to the head of the chain. // This is accomplished in two steps: // // 1) remove the node from its position within the chain. // 2) insert the node as the new head. // // Sometimes, a URL is accessed which has not been seen before. In this case, step 1 can // be skipped completely (which will grow the chain by one). Of course, if the node is // already the head, this whole operation can be skipped. if (this.state.head === url) { // The URL is already in the head position, accessing it is a no-op. return; } // Look up the node in the map, and construct a new entry if it's const node = this.state.map[url] || { url, next: null, previous: null }; // Step 1: remove the node from its position within the chain, if it is in the chain. if (this.state.map[url] !== undefined) { this.remove(url); } // Step 2: insert the node at the head of the chain. // First, check if there's an existing head node. If there is, it has previous: null. // Its previous pointer should be set to the node we're inserting. if (this.state.head !== null) { this.state.map[this.state.head].previous = url; } // The next pointer of the node being inserted gets set to the old head, before the head // pointer is updated to this node. node.next = this.state.head; // The new head is the new node. this.state.head = url; // If there is no tail, then this is the first node, and is both the head and the tail. if (this.state.tail === null) { this.state.tail = url; } // Set the node in the map of nodes (if the URL has been seen before, this is a no-op) // and count the insertion. this.state.map[url] = node; this.state.count++; } } /** * A group of cached resources determined by a set of URL patterns which follow a LRU policy * for caching. */ class DataGroup { constructor(scope, adapter, config, db, debugHandler, prefix) { this.scope = scope; this.adapter = adapter; this.config = config; this.db = db; this.debugHandler = debugHandler; this.prefix = prefix; /** * Tracks the LRU state of resources in this cache. */ this._lru = null; this.patterns = this.config.patterns.map(pattern => new RegExp(pattern)); this.cache = this.scope.caches.open(`${this.prefix}:dynamic:${this.config.name}:cache`); this.lruTable = this.db.open(`${this.prefix}:dynamic:${this.config.name}:lru`); this.ageTable = this.db.open(`${this.prefix}:dynamic:${this.config.name}:age`); } /** * Lazily initialize/load the LRU chain. */ lru() { return __awaiter$1(this, void 0, void 0, function* () { if (this._lru === null) { const table = yield this.lruTable; try { this._lru = new LruList(yield table.read('lru')); } catch (_a) { this._lru = new LruList(); } } return this._lru; }); } /** * Sync the LRU chain to non-volatile storage. */ syncLru() { return __awaiter$1(this, void 0, void 0, function* () { if (this._lru === null) { return; } const table = yield this.lruTable; try { return table.write('lru', this._lru.state); } catch (err) { // Writing lru cache table failed. This could be a result of a full storage. // Continue serving clients as usual. this.debugHandler.log(err, `DataGroup(${this.config.name}@${this.config.version}).syncLru()`); // TODO: Better detect/handle full storage; e.g. using // [navigator.storage](https://developer.mozilla.org/en-US/docs/Web/API/NavigatorStorage/storage). } }); } /** * Process a fetch event and return a `Response` if the resource is covered by this group, * or `null` otherwise. */ handleFetch(req, ctx) { return __awaiter$1(this, void 0, void 0, function* () { // Do nothing if (!this.patterns.some(pattern => pattern.test(req.url))) { return null; } // Lazily initialize the LRU cache. const lru = yield this.lru(); // The URL matches this cache. First, check whether this is a mutating request or not. switch (req.method) { case 'OPTIONS': // Don't try to cache this - it's non-mutating, but is part of a mutating request. // Most likely SWs don't even see this, but this guard is here just in case. return null; case 'GET': case 'HEAD': // Handle the request with whatever strategy was selected. switch (this.config.strategy) { case 'freshness': return this.handleFetchWithFreshness(req, ctx, lru); case 'performance': return this.handleFetchWithPerformance(req, ctx, lru); default: throw new Error(`Unknown strategy: ${this.config.strategy}`); } default: // This was a mutating request. Assume the cache for this URL is no longer valid. const wasCached = lru.remove(req.url); // If there was a cached entry, remove it. if (wasCached) { yield this.clearCacheForUrl(req.url); } // Sync the LRU chain to non-volatile storage. yield this.syncLru(); // Finally, fall back on the network. return this.safeFetch(req); } }); } handleFetchWithPerformance(req, ctx, lru) { return __awaiter$1(this, void 0, void 0, function* () { let res = null; // Check the cache first. If the resource exists there (and is not expired), the cached // version can be used. const fromCache = yield this.loadFromCache(req, lru); if (fromCache !== null) { res = fromCache.res; // Check the age of the resource. if (this.config.refreshAheadMs !== undefined && fromCache.age >= this.config.refreshAheadMs) { ctx.waitUntil(this.safeCacheResponse(req, this.safeFetch(req), lru)); } } if (res !== null) { return res; } // No match from the cache. Go to the network. Note that this is not an 'await' // call, networkFetch is the actual Promise. This is due to timeout handling. const [timeoutFetch, networkFetch] = this.networkFetchWithTimeout(req); res = yield timeoutFetch; // Since fetch() will always return a response, undefined indicates a timeout. if (res === undefined) { // The request timed out. Return a Gateway Timeout error. res = this.adapter.newResponse(null, { status: 504, statusText: 'Gateway Timeout' }); // Cache the network response eventually. ctx.waitUntil(this.safeCacheResponse(req, networkFetch, lru)); } else { // The request completed in time, so cache it inline with the response flow. yield this.safeCacheResponse(req, res, lru); } return res; }); } handleFetchWithFreshness(req, ctx, lru) { return __awaiter$1(this, void 0, void 0, function* () { // Start with a network fetch. const [timeoutFetch, networkFetch] = this.networkFetchWithTimeout(req); let res; // If that fetch errors, treat it as a timed out request. try { res = yield timeoutFetch; } catch (_a) { res = undefined; } // If the network fetch times out or errors, fall back on the cache. if (res === undefined) { ctx.waitUntil(this.safeCacheResponse(req, networkFetch, lru, true)); // Ignore the age, the network response will be cached anyway due to the // behavior of freshness. const fromCache = yield this.loadFromCache(req, lru); res = (fromCache !== null) ? fromCache.res : null; } else { yield this.safeCacheResponse(req, res, lru, true); } // Either the network fetch didn't time out, or the cache yielded a usable response. // In either case, use it. if (res !== null) { return res; } // No response in the cache. No choice but to fall back on the full network fetch. return networkFetch; }); } networkFetchWithTimeout(req) { // If there is a timeout configured, race a timeout Promise with the network fetch. // Otherwise, just fetch from the network directly. if (this.config.timeoutMs !== undefined) { const networkFetch = this.scope.fetch(req); const safeNetworkFetch = (() => __awaiter$1(this, void 0, void 0, function* () { try { return yield networkFetch; } catch (_a) { return this.adapter.newResponse(null, { status: 504, statusText: 'Gateway Timeout', }); } }))(); const networkFetchUndefinedError = (() => __awaiter$1(this, void 0, void 0, function* () { try { return yield networkFetch; } catch (_b) { return undefined; } }))(); // Construct a Promise for the timeout. const timeout = this.adapter.timeout(this.config.timeoutMs); // Race that with the network fetch. This will either be a Response, or `undefined` // in the event that the request errored or timed out. return [Promise.race([networkFetchUndefinedError, timeout]), safeNetworkFetch]; } else { const networkFetch = this.safeFetch(req); // Do a plain fetch. return [networkFetch, networkFetch]; } } safeCacheResponse(req, resOrPromise, lru, okToCacheOpaque) { return __awaiter$1(this, void 0, void 0, function* () { try { const res = yield resOrPromise; try { yield this.cacheResponse(req, res, lru, okToCacheOpaque); } catch (err) { // Saving the API response failed. This could be a result of a full storage. // Since this data is cached lazily and temporarily, continue serving clients as usual. this.debugHandler.log(err, `DataGroup(${this.config.name}@${this.config.version}).safeCacheResponse(${req.url}, status: ${res.status})`); // TODO: Better detect/handle full storage; e.g. using // [navigator.storage](https://developer.mozilla.org/en-US/docs/Web/API/NavigatorStorage/storage). } } catch (_a) { // Request failed // TODO: Handle this error somehow? } }); } loadFromCache(req, lru) { return __awaiter$1(this, void 0, void 0, function* () { // Look for a response in the cache. If one exists, return it. const cache = yield this.cache; let res = yield cache.match(req); if (res !== undefined) { // A response was found in the cache, but its age is not yet known. Look it up. try { const ageTable = yield this.ageTable; const age = this.adapter.time - (yield ageTable.read(req.url)).age; // If the response is young enough, use it. if (age <= this.config.maxAge) { // Successful match from the cache. Use the response, after marking it as having // been accessed. lru.accessed(req.url); return { res, age }; } // Otherwise, or if there was an error, assume the response is expired, and evict it. } catch (_a) { // Some error getting the age for the response. Assume it's expired. } lru.remove(req.url); yield this.clearCacheForUrl(req.url); // TODO: avoid duplicate in event of network timeout, maybe. yield this.syncLru(); } return null; }); } /** * Operation for caching the response from the server. This has to happen all * at once, so that the cache and LRU tracking remain in sync. If the network request * completes before the timeout, this logic will be run inline with the response flow. * If the request times out on the server, an error will be returned but the real network * request will still be running in the background, to be cached when it completes. */ cacheResponse(req, res, lru, okToCacheOpaque = false) { return __awaiter$1(this, void 0, void 0, function* () { // Only cache successful responses. if (!(res.ok || (okToCacheOpaque && res.type === 'opaque'))) { return; } // If caching this response would make the cache exceed its maximum size, evict something // first. if (lru.size >= this.config.maxSize) { // The cache is too big, evict something. const evictedUrl = lru.pop(); if (evictedUrl !== null) { yield this.clearCacheForUrl(evictedUrl); } } // TODO: evaluate for possible race conditions during flaky network periods. // Mark this resource as having been accessed recently. This ensures it won't be evicted // until enough other resources are requested that it falls off the end of the LRU chain. lru.accessed(req.url); // Store the response in the cache (cloning because the browser will consume // the body during the caching operation). yield (yield this.cache).put(req, res.clone()); // Store the age of the cache. const ageTable = yield this.ageTable; yield ageTable.write(req.url, { age: this.adapter.time }); // Sync the LRU chain to non-volatile storage. yield this.syncLru(); }); } /** * Delete all of the saved state which this group uses to track resources. */ cleanup() { return __awaiter$1(this, void 0, void 0, function* () { // Remove both the cache and the database entries which track LRU stats. yield Promise.all([ this.scope.caches.delete(`${this.prefix}:dynamic:${this.config.name}:cache`), this.db.delete(`${this.prefix}:dynamic:${this.config.name}:age`), this.db.delete(`${this.prefix}:dynamic:${this.config.name}:lru`), ]); }); } /** * Clear the state of the cache for a particular resource. * * This doesn't remove the resource from the LRU table, that is assumed to have * been done already. This clears the GET and HEAD versions of the request from * the cache itself, as well as the metadata stored in the age table. */ clearCacheForUrl(url) { return __awaiter$1(this, void 0, void 0, function* () { const [cache, ageTable] = yield Promise.all([this.cache, this.ageTable]); yield Promise.all([ cache.delete(this.adapter.newRequest(url, { method: 'GET' })), cache.delete(this.adapter.newRequest(url, { method: 'HEAD' })), ageTable.delete(url), ]); }); } safeFetch(req) { return __awaiter$1(this, void 0, void 0, function* () { try { return this.scope.fetch(req); } catch (_a) { return this.adapter.newResponse(null, { status: 504, statusText: 'Gateway Timeout', }); } }); } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ var __awaiter$2 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; const BACKWARDS_COMPATIBILITY_NAVIGATION_URLS = [ { positive: true, regex: '^/.*$' }, { positive: false, regex: '^/.*\\.[^/]*$' }, { positive: false, regex: '^/.*__' }, ]; /** * A specific version of the application, identified by a unique manifest * as determined by its hash. * * Each `AppVersion` can be thought of as a published version of the app * that can be installed as an update to any previously installed versions. */ class AppVersion { constructor(scope, adapter, database, idle, debugHandler, manifest, manifestHash) { this.scope = scope; this.adapter = adapter; this.database = database; this.idle = idle; this.debugHandler = debugHandler; this.manifest = manifest; this.manifestHash = manifestHash; /** * A Map of absolute URL paths (/foo.txt) to the known hash of their * contents (if available). */ this.hashTable = new Map(); /** * Tracks whether the manifest has encountered any inconsistencies. */ this._okay = true; // The hashTable within the manifest is an Object - convert it to a Map for easier lookups. Object.keys(this.manifest.hashTable).forEach(url => { this.hashTable.set(url, this.manifest.hashTable[url]); }); // Process each `AssetGroup` declared in the manifest. Each declared group gets an `AssetGroup` // instance // created for it, of a type that depends on the configuration mode. this.assetGroups = (manifest.assetGroups || []).map(config => { // Every asset group has a cache that's prefixed by the manifest hash and the name of the // group. const prefix = `${adapter.cacheNamePrefix}:${this.manifestHash}:assets`; // Check the caching mode, which determines when resources will be fetched/updated. switch (config.installMode) { case 'prefetch': return new PrefetchAssetGroup(this.scope, this.adapter, this.idle, config, this.hashTable, this.database, prefix); case 'lazy': return new LazyAssetGroup(this.scope, this.adapter, this.idle, config, this.hashTable, this.database, prefix); } }); // Process each `DataGroup` declared in the manifest. this.dataGroups = (manifest.dataGroups || []) .map(config => new DataGroup(this.scope, this.adapter, config, this.database, this.debugHandler, `${adapter.cacheNamePrefix}:${config.version}:data`)); // This keeps backwards compatibility with app versions without navigation urls. // Fix: https://github.com/angular/angular/issues/27209 manifest.navigationUrls = manifest.navigationUrls || BACKWARDS_COMPATIBILITY_NAVIGATION_URLS; // Create `include`/`exclude` RegExps for the `navigationUrls` declared in the manifest. const includeUrls = manifest.navigationUrls.filter(spec => spec.positive); const excludeUrls = manifest.navigationUrls.filter(spec => !spec.positive); this.navigationUrls = { include: includeUrls.map(spec => new RegExp(spec.regex)), exclude: excludeUrls.map(spec => new RegExp(spec.regex)), }; } get okay() { return this._okay; } /** * Fully initialize this version of the application. If this Promise resolves successfully, all * required * data has been safely downloaded. */ initializeFully(updateFrom) { return __awaiter$2(this, void 0, void 0, function* () { try { // Fully initialize each asset group, in series. Starts with an empty Promise, // and waits for the previous groups to have been initialized before initializing // the next one in turn. yield this.assetGroups.reduce((previous, group) => __awaiter$2(this, void 0, void 0, function* () { // Wait for the previous groups to complete initialization. If there is a // failure, this will throw, and each subsequent group will throw, until the // whole sequence fails. yield previous; // Initialize this group. return group.initializeFully(updateFrom); }), Promise.resolve()); } catch (err) { this._okay = false; throw err; } }); } handleFetch(req, context) { return __awaiter$2(this, void 0, void 0, function* () { // Check the request against each `AssetGroup` in sequence. If an `AssetGroup` can't handle the // request, // it will return `null`. Thus, the first non-null response is the SW's answer to the request. // So reduce // the group list, keeping track of a possible response. If there is one, it gets passed // through, and if // not the next group is consulted to produce a candidate response. const asset = yield this.assetGroups.reduce((potentialResponse, group) => __awaiter$2(this, void 0, void 0, function* () { // Wait on the previous potential response. If it's not null, it should just be passed // through. const resp = yield potentialResponse; if (resp !== null) { return resp; } // No response has been found yet. Maybe this group will have one. return group.handleFetch(req, context); }), Promise.resolve(null)); // The result of the above is the asset response, if there is any, or null otherwise. Return the // asset // response if there was one. If not, check with the data caching groups. if (asset !== null) { return asset; } // Perform the same reduction operation as above, but this time processing // the data caching groups. const data = yield this.dataGroups.reduce((potentialResponse, group) => __awaiter$2(this, void 0, void 0, function* () { const resp = yield potentialResponse; if (resp !== null) { return resp; } return group.handleFetch(req, context); }), Promise.resolve(null)); // If the data caching group returned a response, go with it. if (data !== null) { return data; } // Next, check if this is a navigation request for a route. Detect circular // navigations by checking if the request URL is the same as the index URL. if (req.url !== this.manifest.index && this.isNavigationRequest(req)) { // This was a navigation request. Re-enter `handleFetch` with a request for // the URL. return this.handleFetch(this.adapter.newRequest(this.manifest.index), context); } return null; }); } /** * Determine whether the request is a navigation request. * Takes into account: Request mode, `Accept` header, `navigationUrls` patterns. */ isNavigationRequest(req) { if (req.mode !== 'navigate') { return false; } if (!this.acceptsTextHtml(req)) { return false; } const urlPrefix = this.scope.registration.scope.replace(/\/$/, ''); const url = req.url.startsWith(urlPrefix) ? req.url.substr(urlPrefix.length) : req.url; const urlWithoutQueryOrHash = url.replace(/[?#].*$/, ''); return this.navigationUrls.include.some(regex => regex.test(urlWithoutQueryOrHash)) && !this.navigationUrls.exclude.some(regex => regex.test(urlWithoutQueryOrHash)); } /** * Check this version for a given resource with a particular hash. */ lookupResourceWithHash(url, hash) { return __awaiter$2(this, void 0, void 0, function* () { // Verify that this version has the requested resource cached. If not, // there's no point in trying. if (!this.hashTable.has(url)) { return null; } // Next, check whether the resource has the correct hash. If not, any cached // response isn't usable. if (this.hashTable.get(url) !== hash) { return null; } const cacheState = yield this.lookupResourceWithoutHash(url); return cacheState && cacheState.response; }); } /** * Check this version for a given resource regardless of its hash. */ lookupResourceWithoutHash(url) { // Limit the search to asset groups, and only scan the cache, don't // load resources from the network. return this.assetGroups.reduce((potentialResponse, group) => __awaiter$2(this, void 0, void 0, function* () { const resp = yield potentialResponse; if (resp !== null) { return resp; } // fetchFromCacheOnly() avoids any network fetches, and returns the // full set of cache data, not just the Response. return group.fetchFromCacheOnly(url); }), Promise.resolve(null)); } /** * List all unhashed resources from all asset groups. */ previouslyCachedResources() { return this.assetGroups.reduce((resources, group) => __awaiter$2(this, void 0, void 0, function* () { return (yield resources).concat(yield group.unhashedResources()); }), Promise.resolve([])); } recentCacheStatus(url) { return __awaiter$2(this, void 0, void 0, function* () { return this.assetGroups.reduce((current, group) => __awaiter$2(this, void 0, void 0, function* () { const status = yield current; if (status === UpdateCacheStatus.CACHED) { return status; } const groupStatus = yield group.cacheStatus(url); if (groupStatus === UpdateCacheStatus.NOT_CACHED) { return status; } return groupStatus; }), Promise.resolve(UpdateCacheStatus.NOT_CACHED)); }); } /** * Erase this application version, by cleaning up all the caches. */ cleanup() { return __awaiter$2(this, void 0, void 0, function* () { yield Promise.all(this.assetGroups.map(group => group.cleanup())); yield Promise.all(this.dataGroups.map(group => group.cleanup())); }); } /** * Get the opaque application data which was provided with the manifest. */ get appData() { return this.manifest.appData || null; } /** * Check whether a request accepts `text/html` (based on the `Accept` header). */ acceptsTextHtml(req) { const accept = req.headers.get('Accept'); if (accept === null) { return false; } const values = accept.split(','); return values.some(value => value.trim().toLowerCase() === 'text/html'); } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ var __awaiter$3 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; const DEBUG_LOG_BUFFER_SIZE = 100; class DebugHandler { constructor(driver, adapter) { this.driver = driver; this.adapter = adapter; // There are two debug log message arrays. debugLogA records new debugging messages. // Once it reaches DEBUG_LOG_BUFFER_SIZE, the array is moved to debugLogB and a new // array is assigned to debugLogA. This ensures that insertion to the debug log is // always O(1) no matter the number of logged messages, and that the total number // of messages in the log never exceeds 2 * DEBUG_LOG_BUFFER_SIZE. this.debugLogA = []; this.debugLogB = []; } handleFetch(req) { return __awaiter$3(this, void 0, void 0, function* () { const [state, versions, idle] = yield Promise.all([ this.driver.debugState(), this.driver.debugVersions(), this.driver.debugIdleState(), ]); const msgState = `NGSW Debug Info: Driver state: ${state.state} (${state.why}) Latest manifest hash: ${state.latestHash || 'none'} Last update check: ${this.since(state.lastUpdateCheck)}`; const msgVersions = versions .map(version => `=== Version ${version.hash} === Clients: ${version.clients.join(', ')}`) .join('\n\n'); const msgIdle = `=== Idle Task Queue === Last update tick: ${this.since(idle.lastTrigger)} Last update run: ${this.since(idle.lastRun)} Task queue: ${idle.queue.map(v => ' * ' + v).join('\n')} Debug log: ${this.formatDebugLog(this.debugLogB)} ${this.formatDebugLog(this.debugLogA)} `; return this.adapter.newResponse(`${msgState} ${msgVersions} ${msgIdle}`, { headers: this.adapter.newHeaders({ 'Content-Type': 'text/plain' }) }); }); } since(time) { if (time === null) { return 'never'; } let age = this.adapter.time - time; const days = Math.floor(age / 86400000); age = age % 86400000; const hours = Math.floor(age / 3600000); age = age % 3600000; const minutes = Math.floor(age / 60000); age = age % 60000; const seconds = Math.floor(age / 1000); const millis = age % 1000; return '' + (days > 0 ? `${days}d` : '') + (hours > 0 ? `${hours}h` : '') + (minutes > 0 ? `${minutes}m` : '') + (seconds > 0 ? `${seconds}s` : '') + (millis > 0 ? `${millis}u` : ''); } log(value, context = '') { // Rotate the buffers if debugLogA has grown too large. if (this.debugLogA.length === DEBUG_LOG_BUFFER_SIZE) { this.debugLogB = this.debugLogA; this.debugLogA = []; } // Convert errors to string for logging. if (typeof value !== 'string') { value = this.errorToString(value); } // Log the message. this.debugLogA.push({ value, time: this.adapter.time, context }); } errorToString(err) { return `${err.name}(${err.message}, ${err.stack})`; } formatDebugLog(log) { return log.map(entry => `[${this.since(entry.time)}] ${entry.value} ${entry.context}`) .join('\n'); } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ var __awaiter$4 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; class IdleScheduler { constructor(adapter, threshold, debug) { this.adapter = adapter; this.threshold = threshold; this.debug = debug; this.queue = []; this.scheduled = null; this.empty = Promise.resolve(); this.emptyResolve = null; this.lastTrigger = null; this.lastRun = null; } trigger() { return __awaiter$4(this, void 0, void 0, function* () { this.lastTrigger = this.adapter.time; if (this.queue.length === 0) { return; } if (this.scheduled !== null) { this.scheduled.cancel = true; } const scheduled = { cancel: false, }; this.scheduled = scheduled; yield this.adapter.timeout(this.threshold); if (scheduled.cancel) { return; } this.scheduled = null; yield this.execute(); }); } execute() { return __awaiter$4(this, void 0, void 0, function* () { this.lastRun = this.adapter.time; while (this.queue.length > 0) { const queue = this.queue; this.queue = []; yield queue.reduce((previous, task) => __awaiter$4(this, void 0, void 0, function* () { yield previous; try { yield task.run(); } catch (err) { this.debug.log(err, `while running idle task ${task.desc}`); } }), Promise.resolve()); } if (this.emptyResolve !== null) { this.emptyResolve(); this.emptyResolve = null; } this.empty = Promise.resolve(); }); } schedule(desc, run) { this.queue.push({ desc, run }); if (this.emptyResolve === null) { this.empty = new Promise(resolve => { this.emptyResolve = resolve; }); } } get size() { return this.queue.length; } get taskDescriptions() { return this.queue.map(task => task.desc); } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ function hashManifest(manifest) { return sha1(JSON.stringify(manifest)); } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ function isMsgCheckForUpdates(msg) { return msg.action === 'CHECK_FOR_UPDATES'; } function isMsgActivateUpdate(msg) { return msg.action === 'ACTIVATE_UPDATE'; } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ var __awaiter$5 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; const IDLE_THRESHOLD = 5000; const SUPPORTED_CONFIG_VERSION = 1; const NOTIFICATION_OPTION_NAMES = [ 'actions', 'badge', 'body', 'data', 'dir', 'icon', 'image', 'lang', 'renotify', 'requireInteraction', 'silent', 'tag', 'timestamp', 'title', 'vibrate' ]; var DriverReadyState; (function (DriverReadyState) { // The SW is operating in a normal mode, responding to all traffic. DriverReadyState[DriverReadyState["NORMAL"] = 0] = "NORMAL"; // The SW does not have a clean installation of the latest version of the app, but older // cached versions are safe to use so long as they don't try to fetch new dependencies. // This is a degraded state. DriverReadyState[DriverReadyState["EXISTING_CLIENTS_ONLY"] = 1] = "EXISTING_CLIENTS_ONLY"; // The SW has decided that caching is completely unreliable, and is forgoing request // handling until the next restart. DriverReadyState[DriverReadyState["SAFE_MODE"] = 2] = "SAFE_MODE"; })(DriverReadyState || (DriverReadyState = {})); class Driver { constructor(scope, adapter, db) { // Set up all the event handlers that the SW needs. this.scope = scope; this.adapter = adapter; this.db = db; /** * Tracks the current readiness condition under which the SW is operating. This controls * whether the SW attempts to respond to some or all requests. */ this.state = DriverReadyState.NORMAL; this.stateMessage = '(nominal)'; /** * Tracks whether the SW is in an initialized state or not. Before initialization, * it's not legal to respond to requests. */ this.initialized = null; /** * Maps client IDs to the manifest hash of the application version being used to serve * them. If a client ID is not present here, it has not yet been assigned a version. * * If a ManifestHash appears here, it is also present in the `versions` map below. */ this.clientVersionMap = new Map(); /** * Maps manifest hashes to instances of `AppVersion` for those manifests. */ this.versions = new Map(); /** * The latest version fetched from the server. * * Valid after initialization has completed. */ this.latestHash = null; this.lastUpdateCheck = null; /** * Whether there is a check for updates currently scheduled due to navigation. */ this.scheduledNavUpdateCheck = false; /** * Keep track of whether we have logged an invalid `only-if-cached` request. * (See `.onFetch()` for details.) */ this.loggedInvalidOnlyIfCachedRequest = false; // The install event is triggered when the service worker is first installed. this.scope.addEventListener('install', (event) => { // SW code updates are separate from application updates, so code updates are // almost as straightforward as restarting the SW. Because of this, it's always // safe to skip waiting until application tabs are closed, and activate the new // SW version immediately. event.waitUntil(this.scope.skipWaiting()); }); // The activate event is triggered when this version of the service worker is // first activated. this.scope.addEventListener('activate', (event) => { event.waitUntil((() => __awaiter$5(this, void 0, void 0, function* () { // As above, it's safe to take over from existing clients immediately, since the new SW // version will continue to serve the old application. yield this.scope.clients.claim(); // Once all clients have been taken over, we can delete caches used by old versions of // `@angular/service-worker`, which are no longer needed. This can happen in the background. this.idle.schedule('activate: cleanup-old-sw-caches', () => __awaiter$5(this, void 0, void 0, function* () { try { yield this.cleanupOldSwCaches(); } catch (err) { // Nothing to do - cleanup failed. Just log it. this.debugger.log(err, 'cleanupOldSwCaches @ activate: cleanup-old-sw-caches'); } })); }))()); // Rather than wait for the first fetch event, which may not arrive until // the next time the application is loaded, the SW takes advantage of the // activation event to schedule initialization. However, if this were run // in the context of the 'activate' event, waitUntil() here would cause fetch // events to block until initialization completed. Thus, the SW does a // postMessage() to itself, to schedule a new event loop iteration with an // entirely separate event context. The SW will be kept alive by waitUntil() // within that separate context while initialization proceeds, while at the // same time the activation event is allowed to resolve and traffic starts // being served. if (this.scope.registration.active !== null) { this.scope.registration.active.postMessage({ action: 'INITIALIZE' }); } }); // Handle the fetch, message, and push events. this.scope.addEventListener('fetch', (event) => this.onFetch(event)); this.scope.addEventListener('message', (event) => this.onMessage(event)); this.scope.addEventListener('push', (event) => this.onPush(event)); this.scope.addEventListener('notificationclick', (event) => this.onClick(event)); // The debugger generates debug pages in response to debugging requests. this.debugger = new DebugHandler(this, this.adapter); // The IdleScheduler will execute idle tasks after a given delay. this.idle = new IdleScheduler(this.adapter, IDLE_THRESHOLD, this.debugger); } /** * The handler for fetch events. * * This is the transition point between the synchronous event handler and the * asynchronous execution that eventually resolves for respondWith() and waitUntil(). */ onFetch(event) { const req = event.request; const scopeUrl = this.scope.registration.scope; const requestUrlObj = this.adapter.parseUrl(req.url, scopeUrl); if (req.headers.has('ngsw-bypass') || /[?&]ngsw-bypass(?:[=&]|$)/i.test(requestUrlObj.search)) { return; } // The only thing that is served unconditionally is the debug page. if (requestUrlObj.path === '/ngsw/state') { // Allow the debugger to handle the request, but don't affect SW state in any other way. event.respondWith(this.debugger.handleFetch(req)); return; } // If the SW is in a broken state where it's not safe to handle requests at all, // returning causes the request to fall back on the network. This is preferred over // `respondWith(fetch(req))` because the latter still shows in DevTools that the // request was handled by the SW. if (this.state === DriverReadyState.SAFE_MODE) { // Even though the worker is in safe mode, idle tasks still need to happen so // things like update checks, etc. can take place. event.waitUntil(this.idle.trigger()); return; } // Although "passive mixed content" (like images) only produces a warning without a // ServiceWorker, fetching it via a ServiceWorker results in an error. Let such requests be // handled by the browser, since handling with the ServiceWorker would fail anyway. // See https://github.com/angular/angular/issues/23012#issuecomment-376430187 for more details. if (requestUrlObj.origin.startsWith('http:') && scopeUrl.startsWith('https:')) { // Still, log the incident for debugging purposes. this.debugger.log(`Ignoring passive mixed content request: Driver.fetch(${req.url})`); return; } // When opening DevTools in Chrome, a request is made for the current URL (and possibly related // resources, e.g. scripts) with `cache: 'only-if-cached'` and `mode: 'no-cors'`. These request // will eventually fail, because `only-if-cached` is only allowed to be used with // `mode: 'same-origin'`. // This is likely a bug in Chrome DevTools. Avoid handling such requests. // (See also https://github.com/angular/angular/issues/22362.) // TODO(gkalpak): Remove once no longer necessary (i.e. fixed in Chrome DevTools). if (req.cache === 'only-if-cached' && req.mode !== 'same-origin') { // Log the incident only the first time it happens, to avoid spamming the logs. if (!this.loggedInvalidOnlyIfCachedRequest) { this.loggedInvalidOnlyIfCachedRequest = true; this.debugger.log(`Ignoring invalid request: 'only-if-cached' can be set only with 'same-origin' mode`, `Driver.fetch(${req.url}, cache: ${req.cache}, mode: ${req.mode})`); } return; } // Past this point, the SW commits to handling the request itself. This could still // fail (and result in `state` being set to `SAFE_MODE`), but even in that case the // SW will still deliver a response. event.respondWith(this.handleFetch(event)); } /** * The handler for message events. */ onMessage(event) { // Ignore message events when the SW is in safe mode, for now. if (this.state === DriverReadyState.SAFE_MODE) { return; } // If the message doesn't have the expected signature, ignore it. const data = event.data; if (!data || !data.action) { return; } event.waitUntil((() => __awaiter$5(this, void 0, void 0, function* () { // Initialization is the only event which is sent directly from the SW to itself, and thus // `event.source` is not a `Client`. Handle it here, before the check for `Client` sources. if (data.action === 'INITIALIZE') { return this.ensureInitialized(event); } // Only messages from true clients are accepted past this point. // This is essentially a typecast. if (!this.adapter.isClient(event.source)) { return; } // Handle the message and keep the SW alive until it's handled. yield this.ensureInitialized(event); yield this.handleMessage(data, event.source); }))()); } onPush(msg) { // Push notifications without data have no effect. if (!msg.data) { return; } // Handle the push and keep the SW alive until it's handled. msg.waitUntil(this.handlePush(msg.data.json())); } onClick(event) { // Handle the click event and keep the SW alive until it's handled. event.waitUntil(this.handleClick(event.notification, event.action)); } ensureInitialized(event) { return __awaiter$5(this, void 0, void 0, function* () { // Since the SW may have just been started, it may or may not have been initialized already. // `this.initialized` will be `null` if initialization has not yet been attempted, or will be a // `Promise` which will resolve (successfully or unsuccessfully) if it has. if (this.initialized !== null) { return this.initialized; } // Initialization has not yet been attempted, so attempt it. This should only ever happen once // per SW instantiation. try { this.initialized = this.initialize(); yield this.initialized; } catch (error) { // If initialization fails, the SW needs to enter a safe state, where it declines to respond // to network requests. this.state = DriverReadyState.SAFE_MODE; this.stateMessage = `Initialization failed due to error: ${errorToString(error)}`; throw error; } finally { // Regardless if initialization succeeded, background tasks still need to happen. event.waitUntil(this.idle.trigger()); } }); } handleMessage(msg, from) { return __awaiter$5(this, void 0, void 0, function* () { if (isMsgCheckForUpdates(msg)) { const action = (() => __awaiter$5(this, void 0, void 0, function* () { yield this.checkForUpdate(); }))(); yield this.reportStatus(from, action, msg.statusNonce); } else if (isMsgActivateUpdate(msg)) { yield this.reportStatus(from, this.updateClient(from), msg.statusNonce); } }); } handlePush(data) { return __awaiter$5(this, void 0, void 0, function* () { yield this.broadcast({ type: 'PUSH', data, }); if (!data.notification || !data.notification.title) { return; } const desc = data.notification; let options = {}; NOTIFICATION_OPTION_NAMES.filter(name => desc.hasOwnProperty(name)) .forEach(name => options[name] = desc[name]); yield this.scope.registration.showNotification(desc['title'], options); }); } handleClick(notification, action) { return __awaiter$5(this, void 0, void 0, function* () { notification.close(); const options = {}; // The filter uses `name in notification` because the properties are on the prototype so // hasOwnProperty does not work here NOTIFICATION_OPTION_NAMES.filter(name => name in notification) .forEach(name => options[name] = notification[name]); yield this.broadcast({ type: 'NOTIFICATION_CLICK', data: { action, notification: options }, }); }); } reportStatus(client, promise, nonce) { return __awaiter$5(this, void 0, void 0, function* () { const response = { type: 'STATUS', nonce, status: true }; try { yield promise; client.postMessage(response); } catch (e) { client.postMessage(Object.assign(Object.assign({}, response), { status: false, error: e.toString() })); } }); } updateClient(client) { return __awaiter$5(this, void 0, void 0, function* () { // Figure out which version the client is on. If it's not on the latest, // it needs to be moved. const existing = this.clientVersionMap.get(client.id); if (existing === this.latestHash) { // Nothing to do, this client is already on the latest version. return; } // Switch the client over. let previous = undefined; // Look up the application data associated with the existing version. If there // isn't any, fall back on using the hash. if (existing !== undefined) { const existingVersion = this.versions.get(existing); previous = this.mergeHashWithAppData(existingVersion.manifest, existing); } // Set the current version used by the client, and sync the mapping to disk. this.clientVersionMap.set(client.id, this.latestHash); yield this.sync(); // Notify the client about this activation. const current = this.versions.get(this.latestHash); const notice = { type: 'UPDATE_ACTIVATED', previous, current: this.mergeHashWithAppData(current.manifest, this.latestHash), }; client.postMessage(notice); }); } handleFetch(event) { return __awaiter$5(this, void 0, void 0, function* () { try { // Ensure the SW instance has been initialized. yield this.ensureInitialized(event); } catch (_a) { // Since the SW is already committed to responding to the currently active request, // respond with a network fetch. return this.safeFetch(event.request); } // On navigation requests, check for new updates. if (event.request.mode === 'navigate' && !this.scheduledNavUpdateCheck) { this.scheduledNavUpdateCheck = true; this.idle.schedule('check-updates-on-navigation', () => __awaiter$5(this, void 0, void 0, function* () { this.scheduledNavUpdateCheck = false; yield this.checkForUpdate(); })); } // Decide which version of the app to use to serve this request. This is asynchronous as in // some cases, a record will need to be written to disk about the assignment that is made. const appVersion = yield this.assignVersion(event); // Bail out if (appVersion === null) { event.waitUntil(this.idle.trigger()); return this.safeFetch(event.request); } let res = null; try { // Handle the request. First try the AppVersion. If that doesn't work, fall back on the // network. res = yield appVersion.handleFetch(event.request, event); } catch (err) { if (err.isCritical) { // Something went wrong with the activation of this version. yield this.versionFailed(appVersion, err); event.waitUntil(this.idle.trigger()); return this.safeFetch(event.request); } throw err; } // The AppVersion will only return null if the manifest doesn't specify what to do about this // request. In that case, just fall back on the network. if (res === null) { event.waitUntil(this.idle.trigger()); return this.safeFetch(event.request); } // Trigger the idle scheduling system. The Promise returned by trigger() will resolve after // a specific amount of time has passed. If trigger() hasn't been called again by then (e.g. // on a subsequent request), the idle task queue will be drained and the Promise won't resolve // until that operation is complete as well. event.waitUntil(this.idle.trigger()); // The AppVersion returned a usable response, so return it. return res; }); } /** * Attempt to quickly reach a state where it's safe to serve responses. */ initialize() { return __awaiter$5(this, void 0, void 0, function* () { // On initialization, all of the serialized state is read out of the 'control' // table. This includes: // - map of hashes to manifests of currently loaded application versions // - map of client IDs to their pinned versions // - record of the most recently fetched manifest hash // // If these values don't exist in the DB, then this is the either the first time // the SW has run or the DB state has been wiped or is inconsistent. In that case, // load a fresh copy of the manifest and reset the state from scratch. // Open up the DB table. const table = yield this.db.open('control'); // Attempt to load the needed state from the DB. If this fails, the catch {} block // will populate these variables with freshly constructed values. let manifests, assignments, latest; try { // Read them from the DB simultaneously. [manifests, assignments, latest] = yield Promise.all([ table.read('manifests'), table.read('assignments'), table.read('latest'), ]); // Successfully loaded from saved state. This implies a manifest exists, so // the update check needs to happen in the background. this.idle.schedule('init post-load (update, cleanup)', () => __awaiter$5(this, void 0, void 0, function* () { yield this.checkForUpdate(); try { yield this.cleanupCaches(); } catch (err) { // Nothing to do - cleanup failed. Just log it. this.debugger.log(err, 'cleanupCaches @ init post-load'); } })); } catch (_) { // Something went wrong. Try to start over by fetching a new manifest from the // server and building up an empty initial state. const manifest = yield this.fetchLatestManifest(); const hash = hashManifest(manifest); manifests = {}; manifests[hash] = manifest; assignments = {}; latest = { latest: hash }; // Save the initial state to the DB. yield Promise.all([ table.write('manifests', manifests), table.write('assignments', assignments), table.write('latest', latest), ]); } // At this point, either the state has been loaded successfully, or fresh state // with a new copy of the manifest has been produced. At this point, the `Driver` // can have its internals hydrated from the state. // Initialize the `versions` map by setting each hash to a new `AppVersion` instance // for that manifest. Object.keys(manifests).forEach((hash) => { const manifest = manifests[hash]; // If the manifest is newly initialized, an AppVersion may have already been // created for it. if (!this.versions.has(hash)) { this.versions.set(hash, new AppVersion(this.scope, this.adapter, this.db, this.idle, this.debugger, manifest, hash)); } }); // Map each client ID to its associated hash. Along the way, verify that the hash // is still valid for that client ID. It should not be possible for a client to // still be associated with a hash that was since removed from the state. Object.keys(assignments).forEach((clientId) => { const hash = assignments[clientId]; if (this.versions.has(hash)) { this.clientVersionMap.set(clientId, hash); } else { this.clientVersionMap.set(clientId, latest.latest); this.debugger.log(`Unknown version ${hash} mapped for client ${clientId}, using latest instead`, `initialize: map assignments`); } }); // Set the latest version. this.latestHash = latest.latest; // Finally, assert that the latest version is in fact loaded. if (!this.versions.has(latest.latest)) { throw new Error(`Invariant violated (initialize): latest hash ${latest.latest} has no known manifest`); } // Finally, wait for the scheduling of initialization of all versions in the // manifest. Ordinarily this just schedules the initializations to happen during // the next idle period, but in development mode this might actually wait for the // full initialization. // If any of these initializations fail, versionFailed() will be called either // synchronously or asynchronously to handle the failure and re-map clients. yield Promise.all(Object.keys(manifests).map((hash) => __awaiter$5(this, void 0, void 0, function* () { try { // Attempt to schedule or initialize this version. If this operation is // successful, then initialization either succeeded or was scheduled. If // it fails, then full initialization was attempted and failed. yield this.scheduleInitialization(this.versions.get(hash)); } catch (err) { this.debugger.log(err, `initialize: schedule init of ${hash}`); return false; } }))); }); } lookupVersionByHash(hash, debugName = 'lookupVersionByHash') { // The version should exist, but check just in case. if (!this.versions.has(hash)) { throw new Error(`Invariant violated (${debugName}): want AppVersion for ${hash} but not loaded`); } return this.versions.get(hash); } /** * Decide which version of the manifest to use for the event. */ assignVersion(event) { return __awaiter$5(this, void 0, void 0, function* () { // First, check whether the event has a (non empty) client ID. If it does, the version may // already be associated. const clientId = event.clientId; if (clientId) { // Check if there is an assigned client id. if (this.clientVersionMap.has(clientId)) { // There is an assignment for this client already. const hash = this.clientVersionMap.get(clientId); let appVersion = this.lookupVersionByHash(hash, 'assignVersion'); // Ordinarily, this client would be served from its assigned version. But, if this // request is a navigation request, this client can be updated to the latest // version immediately. if (this.state === DriverReadyState.NORMAL && hash !== this.latestHash && appVersion.isNavigationRequest(event.request)) { // Update this client to the latest version immediately. if (this.latestHash === null) { throw new Error(`Invariant violated (assignVersion): latestHash was null`); } const client = yield this.scope.clients.get(clientId); yield this.updateClient(client); appVersion = this.lookupVersionByHash(this.latestHash, 'assignVersion'); } // TODO: make sure the version is valid. return appVersion; } else { // This is the first time this client ID has been seen. Whether the SW is in a // state to handle new clients depends on the current readiness state, so check // that first. if (this.state !== DriverReadyState.NORMAL) { // It's not safe to serve new clients in the current state. It's possible that // this is an existing client which has not been mapped yet (see below) but // even if that is the case, it's invalid to make an assignment to a known // invalid version, even if that assignment was previously implicit. Return // undefined here to let the caller know that no assignment is possible at // this time. return null; } // It's safe to handle this request. Two cases apply. Either: // 1) the browser assigned a client ID at the time of the navigation request, and // this is truly the first time seeing this client, or // 2) a navigation request came previously from the same client, but with no client // ID attached. Browsers do this to avoid creating a client under the origin in // the event the navigation request is just redirected. // // In case 1, the latest version can safely be used. // In case 2, the latest version can be used, with the assumption that the previous // navigation request was answered under the same version. This assumption relies // on the fact that it's unlikely an update will come in between the navigation // request and requests for subsequent resources on that page. // First validate the current state. if (this.latestHash === null) { throw new Error(`Invariant violated (assignVersion): latestHash was null`); } // Pin this client ID to the current latest version, indefinitely. this.clientVersionMap.set(clientId, this.latestHash); yield this.sync(); // Return the latest `AppVersion`. return this.lookupVersionByHash(this.latestHash, 'assignVersion'); } } else { // No client ID was associated with the request. This must be a navigation request // for a new client. First check that the SW is accepting new clients. if (this.state !== DriverReadyState.NORMAL) { return null; } // Serve it with the latest version, and assume that the client will actually get // associated with that version on the next request. // First validate the current state. if (this.latestHash === null) { throw new Error(`Invariant violated (assignVersion): latestHash was null`); } // Return the latest `AppVersion`. return this.lookupVersionByHash(this.latestHash, 'assignVersion'); } }); } fetchLatestManifest(ignoreOfflineError = false) { return __awaiter$5(this, void 0, void 0, function* () { const res = yield this.safeFetch(this.adapter.newRequest('ngsw.json?ngsw-cache-bust=' + Math.random())); if (!res.ok) { if (res.status === 404) { yield this.deleteAllCaches(); yield this.scope.registration.unregister(); } else if (res.status === 504 && ignoreOfflineError) { return null; } throw new Error(`Manifest fetch failed! (status: ${res.status})`); } this.lastUpdateCheck = this.adapter.time; return res.json(); }); } deleteAllCaches() { return __awaiter$5(this, void 0, void 0, function* () { yield (yield this.scope.caches.keys()) .filter(key => key.startsWith(`${this.adapter.cacheNamePrefix}:`)) .reduce((previous, key) => __awaiter$5(this, void 0, void 0, function* () { yield Promise.all([ previous, this.scope.caches.delete(key), ]); }), Promise.resolve()); }); } /** * Schedule the SW's attempt to reach a fully prefetched state for the given AppVersion * when the SW is not busy and has connectivity. This returns a Promise which must be * awaited, as under some conditions the AppVersion might be initialized immediately. */ scheduleInitialization(appVersion) { return __awaiter$5(this, void 0, void 0, function* () { const initialize = () => __awaiter$5(this, void 0, void 0, function* () { try { yield appVersion.initializeFully(); } catch (err) { this.debugger.log(err, `initializeFully for ${appVersion.manifestHash}`); yield this.versionFailed(appVersion, err); } }); // TODO: better logic for detecting localhost. if (this.scope.registration.scope.indexOf('://localhost') > -1) { return initialize(); } this.idle.schedule(`initialization(${appVersion.manifestHash})`, initialize); }); } versionFailed(appVersion, err) { return __awaiter$5(this, void 0, void 0, function* () { // This particular AppVersion is broken. First, find the manifest hash. const broken = Array.from(this.versions.entries()).find(([hash, version]) => version === appVersion); if (broken === undefined) { // This version is no longer in use anyway, so nobody cares. return; } const brokenHash = broken[0]; const affectedClients = Array.from(this.clientVersionMap.entries()) .filter(([clientId, hash]) => hash === brokenHash) .map(([clientId]) => clientId); // TODO: notify affected apps. // The action taken depends on whether the broken manifest is the active (latest) or not. // If so, the SW cannot accept new clients, but can continue to service old ones. if (this.latestHash === brokenHash) { // The latest manifest is broken. This means that new clients are at the mercy of the // network, but caches continue to be valid for previous versions. This is // unfortunate but unavoidable. this.state = DriverReadyState.EXISTING_CLIENTS_ONLY; this.stateMessage = `Degraded due to: ${errorToString(err)}`; // Cancel the binding for the affected clients. affectedClients.forEach(clientId => this.clientVersionMap.delete(clientId)); } else { // The latest version is viable, but this older version isn't. The only // possible remedy is to stop serving the older version and go to the network. // Put the affected clients on the latest version. affectedClients.forEach(clientId => this.clientVersionMap.set(clientId, this.latestHash)); } try { yield this.sync(); } catch (err2) { // We are already in a bad state. No need to make things worse. // Just log the error and move on. this.debugger.log(err2, `Driver.versionFailed(${err.message || err})`); } }); } setupUpdate(manifest, hash) { return __awaiter$5(this, void 0, void 0, function* () { const newVersion = new AppVersion(this.scope, this.adapter, this.db, this.idle, this.debugger, manifest, hash); // Firstly, check if the manifest version is correct. if (manifest.configVersion !== SUPPORTED_CONFIG_VERSION) { yield this.deleteAllCaches(); yield this.scope.registration.unregister(); throw new Error(`Invalid config version: expected ${SUPPORTED_CONFIG_VERSION}, got ${manifest.configVersion}.`); } // Cause the new version to become fully initialized. If this fails, then the // version will not be available for use. yield newVersion.initializeFully(this); // Install this as an active version of the app. this.versions.set(hash, newVersion); // Future new clients will use this hash as the latest version. this.latestHash = hash; // If we are in `EXISTING_CLIENTS_ONLY` mode (meaning we didn't have a clean copy of the last // latest version), we can now recover to `NORMAL` mode and start accepting new clients. if (this.state === DriverReadyState.EXISTING_CLIENTS_ONLY) { this.state = DriverReadyState.NORMAL; this.stateMessage = '(nominal)'; } yield this.sync(); yield this.notifyClientsAboutUpdate(newVersion); }); } checkForUpdate() { return __awaiter$5(this, void 0, void 0, function* () { let hash = '(unknown)'; try { const manifest = yield this.fetchLatestManifest(true); if (manifest === null) { // Client or server offline. Unable to check for updates at this time. // Continue to service clients (existing and new). this.debugger.log('Check for update aborted. (Client or server offline.)'); return false; } hash = hashManifest(manifest); // Check whether this is really an update. if (this.versions.has(hash)) { return false; } yield this.setupUpdate(manifest, hash); return true; } catch (err) { this.debugger.log(err, `Error occurred while updating to manifest ${hash}`); this.state = DriverReadyState.EXISTING_CLIENTS_ONLY; this.stateMessage = `Degraded due to failed initialization: ${errorToString(err)}`; return false; } }); } /** * Synchronize the existing state to the underlying database. */ sync() { return __awaiter$5(this, void 0, void 0, function* () { // Open up the DB table. const table = yield this.db.open('control'); // Construct a serializable map of hashes to manifests. const manifests = {}; this.versions.forEach((version, hash) => { manifests[hash] = version.manifest; }); // Construct a serializable map of client ids to version hashes. const assignments = {}; this.clientVersionMap.forEach((hash, clientId) => { assignments[clientId] = hash; }); // Record the latest entry. Since this is a sync which is necessarily happening after // initialization, latestHash should always be valid. const latest = { latest: this.latestHash, }; // Synchronize all of these. yield Promise.all([ table.write('manifests', manifests), table.write('assignments', assignments), table.write('latest', latest), ]); }); } cleanupCaches() { return __awaiter$5(this, void 0, void 0, function* () { // Query for all currently active clients, and list the client ids. This may skip // some clients in the browser back-forward cache, but not much can be done about // that. const activeClients = (yield this.scope.clients.matchAll()).map(client => client.id); // A simple list of client ids that the SW has kept track of. Subtracting // activeClients from this list will result in the set of client ids which are // being tracked but are no longer used in the browser, and thus can be cleaned up. const knownClients = Array.from(this.clientVersionMap.keys()); // Remove clients in the clientVersionMap that are no longer active. knownClients.filter(id => activeClients.indexOf(id) === -1) .forEach(id => this.clientVersionMap.delete(id)); // Next, determine the set of versions which are still used. All others can be // removed. const usedVersions = new Set(); this.clientVersionMap.forEach((version, _) => usedVersions.add(version)); // Collect all obsolete versions by filtering out used versions from the set of all versions. const obsoleteVersions = Array.from(this.versions.keys()) .filter(version => !usedVersions.has(version) && version !== this.latestHash); // Remove all the versions which are no longer used. yield obsoleteVersions.reduce((previous, version) => __awaiter$5(this, void 0, void 0, function* () { // Wait for the other cleanup operations to complete. yield previous; // Try to get past the failure of one particular version to clean up (this // shouldn't happen, but handle it just in case). try { // Get ahold of the AppVersion for this particular hash. const instance = this.versions.get(version); // Delete it from the canonical map. this.versions.delete(version); // Clean it up. yield instance.cleanup(); } catch (err) { // Oh well? Not much that can be done here. These caches will be removed when // the SW revs its format version, which happens from time to time. this.debugger.log(err, `cleanupCaches - cleanup ${version}`); } }), Promise.resolve()); // Commit all the changes to the saved state. yield this.sync(); }); } /** * Delete caches that were used by older versions of `@angular/service-worker` to avoid running * into storage quota limitations imposed by browsers. * (Since at this point the SW has claimed all clients, it is safe to remove those caches.) */ cleanupOldSwCaches() { return __awaiter$5(this, void 0, void 0, function* () { const cacheNames = yield this.scope.caches.keys(); const oldSwCacheNames = cacheNames.filter(name => /^ngsw:(?!\/)/.test(name)); yield Promise.all(oldSwCacheNames.map(name => this.scope.caches.delete(name))); }); } /** * Determine if a specific version of the given resource is cached anywhere within the SW, * and fetch it if so. */ lookupResourceWithHash(url, hash) { return Array // Scan through the set of all cached versions, valid or otherwise. It's safe to do such // lookups even for invalid versions as the cached version of a resource will have the // same hash regardless. .from(this.versions.values()) // Reduce the set of versions to a single potential result. At any point along the // reduction, if a response has already been identified, then pass it through, as no // future operation could change the response. If no response has been found yet, keep // checking versions until one is or until all versions have been exhausted. .reduce((prev, version) => __awaiter$5(this, void 0, void 0, function* () { // First, check the previous result. If a non-null result has been found already, just // return it. if ((yield prev) !== null) { return prev; } // No result has been found yet. Try the next `AppVersion`. return version.lookupResourceWithHash(url, hash); }), Promise.resolve(null)); } lookupResourceWithoutHash(url) { return __awaiter$5(this, void 0, void 0, function* () { yield this.initialized; const version = this.versions.get(this.latestHash); return version ? version.lookupResourceWithoutHash(url) : null; }); } previouslyCachedResources() { return __awaiter$5(this, void 0, void 0, function* () { yield this.initialized; const version = this.versions.get(this.latestHash); return version ? version.previouslyCachedResources() : []; }); } recentCacheStatus(url) { return __awaiter$5(this, void 0, void 0, function* () { const version = this.versions.get(this.latestHash); return version ? version.recentCacheStatus(url) : UpdateCacheStatus.NOT_CACHED; }); } mergeHashWithAppData(manifest, hash) { return { hash, appData: manifest.appData, }; } notifyClientsAboutUpdate(next) { return __awaiter$5(this, void 0, void 0, function* () { yield this.initialized; const clients = yield this.scope.clients.matchAll(); yield clients.reduce((previous, client) => __awaiter$5(this, void 0, void 0, function* () { yield previous; // Firstly, determine which version this client is on. const version = this.clientVersionMap.get(client.id); if (version === undefined) { // Unmapped client - assume it's the latest. return; } if (version === this.latestHash) { // Client is already on the latest version, no need for a notification. return; } const current = this.versions.get(version); // Send a notice. const notice = { type: 'UPDATE_AVAILABLE', current: this.mergeHashWithAppData(current.manifest, version), available: this.mergeHashWithAppData(next.manifest, this.latestHash), }; client.postMessage(notice); }), Promise.resolve()); }); } broadcast(msg) { return __awaiter$5(this, void 0, void 0, function* () { const clients = yield this.scope.clients.matchAll(); clients.forEach(client => { client.postMessage(msg); }); }); } debugState() { return __awaiter$5(this, void 0, void 0, function* () { return { state: DriverReadyState[this.state], why: this.stateMessage, latestHash: this.latestHash, lastUpdateCheck: this.lastUpdateCheck, }; }); } debugVersions() { return __awaiter$5(this, void 0, void 0, function* () { // Build list of versions. return Array.from(this.versions.keys()).map(hash => { const version = this.versions.get(hash); const clients = Array.from(this.clientVersionMap.entries()) .filter(([clientId, version]) => version === hash) .map(([clientId, version]) => clientId); return { hash, manifest: version.manifest, clients, status: '', }; }); }); } debugIdleState() { return __awaiter$5(this, void 0, void 0, function* () { return { queue: this.idle.taskDescriptions, lastTrigger: this.idle.lastTrigger, lastRun: this.idle.lastRun, }; }); } safeFetch(req) { return __awaiter$5(this, void 0, void 0, function* () { try { return yield this.scope.fetch(req); } catch (err) { this.debugger.log(err, `Driver.fetch(${req.url})`); return this.adapter.newResponse(null, { status: 504, statusText: 'Gateway Timeout', }); } }); } } /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ const scope = self; const adapter = new Adapter(scope); const driver = new Driver(scope, adapter, new CacheDatabase(scope, adapter)); }()); ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/ngsw.json ================================================ { "configVersion": 1, "timestamp": 1582635186642, "index": "/index.html", "assetGroups": [ { "name": "app", "installMode": "prefetch", "updateMode": "prefetch", "urls": [ "/5-es2015.b2d2985f67757f20fa32.js", "/5-es5.b2d2985f67757f20fa32.js", "/favicon.ico", "/index.html", "/main-es2015.17a65f3ef96068aef242.js", "/main-es5.17a65f3ef96068aef242.js", "/polyfills-es2015.ca64e4516afbb1b890d5.js", "/polyfills-es5.277e2e1d6fb2daf91a5c.js", "/runtime-es2015.ef57c12ac0fc432d4c88.js", "/runtime-es5.ef57c12ac0fc432d4c88.js", "/styles.87fc5b77face4b6618ed.css" ], "patterns": [] }, { "name": "assets", "installMode": "lazy", "updateMode": "prefetch", "urls": [ "/assets/icons/icon-128x128.png", "/assets/icons/icon-144x144.png", "/assets/icons/icon-152x152.png", "/assets/icons/icon-192x192.png", "/assets/icons/icon-384x384.png", "/assets/icons/icon-512x512.png", "/assets/icons/icon-72x72.png", "/assets/icons/icon-96x96.png" ], "patterns": [] } ], "dataGroups": [ { "name": "api-product", "patterns": [ "\\/api\\/products" ], "strategy": "performance", "maxSize": 100, "maxAge": 432000000, "version": 1 } ], "hashTable": { "/5-es2015.b2d2985f67757f20fa32.js": "62cb94c7ea980524d6e9ce1ad12337597833ded8", "/5-es5.b2d2985f67757f20fa32.js": "6a4ea2bc855faa5bc1db9d04329dcbbd46f08b11", "/assets/icons/icon-128x128.png": "dae3b6ed49bdaf4327b92531d4b5b4a5d30c7532", "/assets/icons/icon-144x144.png": "b0bd89982e08f9bd2b642928f5391915b74799a7", "/assets/icons/icon-152x152.png": "7479a9477815dfd9668d60f8b3b2fba709b91310", "/assets/icons/icon-192x192.png": "1abd80d431a237a853ce38147d8c63752f10933b", "/assets/icons/icon-384x384.png": "329749cd6393768d3131ed6304c136b1ca05f2fd", "/assets/icons/icon-512x512.png": "559d9c4318b45a1f2b10596bbb4c960fe521dbcc", "/assets/icons/icon-72x72.png": "c457e56089a36952cd67156f9996bc4ce54a5ed9", "/assets/icons/icon-96x96.png": "3914125a4b445bf111c5627875fc190f560daa41", "/favicon.ico": "22f6a4a3bcaafafb0254e0f2fa4ceb89e505e8b2", "/index.html": "d34c276b7dd19d1a364ad09fdc2633d877e43885", "/main-es2015.17a65f3ef96068aef242.js": "b77df3e544cf6bc998f130f0e6163408dc51cf7d", "/main-es5.17a65f3ef96068aef242.js": "256d6e2a83a7d5afe3cafb99de96b39abb2f2bc7", "/polyfills-es2015.ca64e4516afbb1b890d5.js": "8779ed8d9bf0580e1b50b352a9b8fd520be24433", "/polyfills-es5.277e2e1d6fb2daf91a5c.js": "8d03638471d7374e81cf33adfdea439f84ac3873", "/runtime-es2015.ef57c12ac0fc432d4c88.js": "d1f16cdec13619b75a31caef12cb495bec6b708c", "/runtime-es5.ef57c12ac0fc432d4c88.js": "c0669a55eba309b7d3b9e15cdc42202dc58a8702", "/styles.87fc5b77face4b6618ed.css": "1ad2ae04dbcddc1f20d382ad3a81e0f0bbb3e5e9" }, "navigationUrls": [ { "positive": true, "regex": "^\\/.*$" } ] } ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 10 - SportsStore - Deployment/End of Chapter/SportsStore/dist/SportsStore/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 11 - Angular Projects and Tools/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 11 - Angular Projects and Tools/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 11 - Angular Projects and Tools/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 11 - Angular Projects and Tools/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 12 - Using Data Bindings/Beginning of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 12 - Using Data Bindings/Beginning of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 12 - Using Data Bindings/Beginning of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 12 - Using Data Bindings/Beginning of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 12 - Using Data Bindings/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 12 - Using Data Bindings/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 12 - Using Data Bindings/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 12 - Using Data Bindings/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 13 - Using the Built-In Directives/Beginning of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 13 - Using the Built-In Directives/Beginning of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 13 - Using the Built-In Directives/Beginning of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 13 - Using the Built-In Directives/Beginning of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 13 - Using the Built-In Directives/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 13 - Using the Built-In Directives/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 13 - Using the Built-In Directives/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 13 - Using the Built-In Directives/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 14 - Using Events and Forms/Beginning of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 14 - Using Events and Forms/Beginning of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 14 - Using Events and Forms/Beginning of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 14 - Using Events and Forms/Beginning of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 14 - Using Events and Forms/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 14 - Using Events and Forms/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 14 - Using Events and Forms/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 14 - Using Events and Forms/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 15 - Attribute Directives/Beginning of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 15 - Attribute Directives/Beginning of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 15 - Attribute Directives/Beginning of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 15 - Attribute Directives/Beginning of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 15 - Attribute Directives/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 15 - Attribute Directives/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 15 - Attribute Directives/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 15 - Attribute Directives/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 16 - Structural Directives/Beginning of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 16 - Structural Directives/Beginning of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 16 - Structural Directives/Beginning of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 16 - Structural Directives/Beginning of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 16 - Structural Directives/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 16 - Structural Directives/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 16 - Structural Directives/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 16 - Structural Directives/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 17 - Creating Components/Beginning of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 17 - Creating Components/Beginning of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 17 - Creating Components/Beginning of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 17 - Creating Components/Beginning of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 17 - Creating Components/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 17 - Creating Components/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 17 - Creating Components/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 17 - Creating Components/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 18 - Using Pipes/Beginning of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 18 - Using Pipes/Beginning of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 18 - Using Pipes/Beginning of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 18 - Using Pipes/Beginning of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 18 - Using Pipes/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 18 - Using Pipes/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 18 - Using Pipes/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 18 - Using Pipes/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 19 - Using Services/Beginning of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 19 - Using Services/Beginning of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 19 - Using Services/Beginning of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 19 - Using Services/Beginning of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 19 - Using Services/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 19 - Using Services/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 19 - Using Services/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 19 - Using Services/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 20 - Using Service Providers/Beginning of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 20 - Using Service Providers/Beginning of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 20 - Using Service Providers/Beginning of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 20 - Using Service Providers/Beginning of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 20 - Using Service Providers/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 20 - Using Service Providers/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 20 - Using Service Providers/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 20 - Using Service Providers/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: 21 - Using and Creating Modules/End of Chapter/example/dist/example/main-es2015.bde05668bf3f8343a347.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let o=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else o&&console.log("RxJS: Back to a better error behavior. Thank you. <3");o=e},get useDeprecatedSynchronousErrorHandling(){return o}};function i(e){setTimeout(()=>{throw e},0)}const l={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;i(e)},complete(){}},u=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function c(e){return null!==e&&"object"==typeof e}const a=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:o,_subscriptions:s}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof a?t.errors:t),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!e){this.destination=l;break}if("object"==typeof e){e instanceof p?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new p(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class _ extends p{constructor(e,t,n,o){let s;super(),this._parentSubscriber=e;let i=this;r(t)?s=t:t&&(s=t.next,n=t.error,o=t.complete,t!==l&&(i=Object.create(t),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=s,this._error=n,this._complete=o}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):i(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;i(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function y(){}let g=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof p)return e;if(e[f])return e[f]()}return e||t||n?new p(e,t,n):new p(l)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof p?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=v(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(o){n(o),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:y)(this);var t}toPromise(e){return new(e=v(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function v(e){if(e||(e=s.Promise||Promise),!e)throw new Error("no Promise impl found");return e}const w=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class b extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class C extends p{constructor(e){super(e),this.destination=e}}let x=(()=>{class e extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new w;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let o=0;onew E(e,t),e})();class E extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class k extends p{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;n{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return T(e);var t,n,r,o,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return o=e,e=>(o.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,i),e);if(e&&"function"==typeof e[I])return r=e,e=>{const t=r[I]();for(;;){const n=t.next();if(n.done){e.complete();break}if(e.next(n.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends p{notifyNext(e,t,n,r,o){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}class O{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new N(e,this.project,this.thisArg))}}class N extends p{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}class P{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new R(e,this.project,this.concurrent))}}class R extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(e){return e}function M(){return function(e){return e.lift(new H(e))}}class H{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new F(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}class F extends p{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new h,e.add(this.source.subscribe(new Z(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return M()(this)}}const L=(()=>{const e=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class Z extends C{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function $(){return new x}function B(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function o(...e){if(this instanceof o)return r.apply(this,e),this;const t=new o(...e);return n.annotation=t,n;function n(e,n,r){const o=e.hasOwnProperty("__parameters__")?e.__parameters__:Object.defineProperty(e,"__parameters__",{value:[]}).__parameters__;for(;o.length<=r;)o.push(null);return(o[r]=o[r]||[]).push(t),e}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o}const z=B("Inject",e=>({token:e})),U=B("Optional"),q=B("Self"),W=B("SkipSelf");var Q=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function G(e){for(let t in e)if(e[t]===G)return t;throw Error("Could not find renamed property on target object.")}function J(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function K(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function Y(e){return X(e,e[te])||X(e,e[oe])}function X(e,t){return t&&t.token===e?t:null}function ee(e){return e&&(e.hasOwnProperty(ne)||e.hasOwnProperty(se))?e[ne]:null}const te=G({"\u0275prov":G}),ne=G({"\u0275inj":G}),re=G({"\u0275provFallback":G}),oe=G({ngInjectableDef:G}),se=G({ngInjectorDef:G});function ie(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ie).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function le(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ue=G({__forward_ref__:G});function ce(e){return e.__forward_ref__=ce,e.toString=function(){return ie(this())},e}function ae(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ue)&&t.__forward_ref__===ce?e():e;var t}const he="undefined"!=typeof globalThis&&globalThis,de="undefined"!=typeof window&&window,fe="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,pe="undefined"!=typeof global&&global,_e=he||pe||de||fe,me=G({"\u0275cmp":G}),ye=G({"\u0275dir":G}),ge=G({"\u0275pipe":G}),ve=G({"\u0275mod":G}),we=G({"\u0275loc":G}),be=G({"\u0275fac":G}),Ce=G({__NG_ELEMENT_ID__:G});class xe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=J({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Ee=new xe("INJECTOR",-1),ke={},Te=/\n/gm,Se=G({provide:String,useValue:G});let Ie,Ae=void 0;function De(e){const t=Ae;return Ae=e,t}function Oe(e){const t=Ie;return Ie=e,t}function Ne(e,t=Q.Default){if(void 0===Ae)throw new Error("inject() must be called from an injection context");return null===Ae?Re(e,void 0,t):Ae.get(e,t&Q.Optional?null:void 0,t)}function Pe(e,t=Q.Default){return(Ie||Ne)(ae(e),t)}function Re(e,t,n){const r=Y(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Q.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${ie(e)}]`)}function je(e){const t=[];for(let n=0;nArray.isArray(e)?Fe(e,t):t(e))}const Ve=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Le=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Ze(e){return""+{toString:e}}const $e={},Be=[];let ze=0;function Ue(e){return Je(e)||function(e){return e[ye]||null}(e)}function qe(e){return function(e){return e[ge]||null}(e)}const We={};function Qe(e){const t={type:e.type,bootstrap:e.bootstrap||Be,declarations:e.declarations||Be,imports:e.imports||Be,exports:e.exports||Be,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Ze(()=>{We[e.id]=e.type}),t}function Ge(e,t){if(null==e)return $e;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],s=o;Array.isArray(o)&&(s=o[1],o=o[0]),n[o]=r,t&&(t[o]=s)}return n}function Je(e){return e[me]||null}function Ke(e,t){return e.hasOwnProperty(be)?e[be]:null}function Ye(e,t){const n=e[ve]||null;if(!n&&!0===t)throw new Error(`Type ${ie(e)} does not have '\u0275mod' property.`);return n}function Xe(e){return Array.isArray(e)&&"object"==typeof e[1]}function et(e){return Array.isArray(e)&&!0===e[1]}function tt(e){return 0!=(8&e.flags)}function nt(e){return null!==e.template}const rt={lFrame:yt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function ot(){return rt.bindingsEnabled}function st(){return rt.lFrame.lView}function it(){return rt.lFrame.tView}function lt(){return rt.lFrame.previousOrParentTNode}function ut(e,t){rt.lFrame.previousOrParentTNode=e,rt.lFrame.isParent=t}function ct(){return rt.lFrame.isParent}function at(){return rt.checkNoChangesMode}function ht(e){rt.checkNoChangesMode=e}function dt(e,t){const n=rt.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function ft(e){rt.lFrame.currentQueryIndex=e}function pt(e,t){const n=mt();rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){const n=mt(),r=e[1];rt.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function mt(){const e=rt.lFrame,t=null===e?null:e.child;return null===t?yt(e):t}function yt(e){const t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function gt(){const e=rt.lFrame;return rt.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}const vt=gt;function wt(){const e=gt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function bt(e){rt.lFrame.selectedIndex=e}function Ct(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(s>10>16&&(3&e[2])===t&&(e[2]+=1024,s.call(i)):s.call(i)}class It{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}let At=void 0;function Dt(e){return!!e.listen}const Ot={createRenderer:(e,t)=>void 0!==At?At:"undefined"!=typeof document?document:void 0};function Nt(e,t,n){const r=Dt(e);let o=0;for(;ot){i=s-1;break}}}for(;s>16,r=t;for(;n>0;)r=r[15],n--;return r}function Ht(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}const Ft=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e))();function Vt(e){return e instanceof Function?e():e}let Lt=!0;function Zt(e){const t=Lt;return Lt=e,t}let $t=0;function Bt(e,t){const n=Ut(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,zt(r.data,e),zt(t,null),zt(r.blueprint,null));const o=qt(e,t),s=e.injectorIndex;if(-1!==o){const e=jt(o),n=Mt(o,t),r=n[1].data;for(let o=0;o<8;o++)t[s+o]=n[e+o]|r[e+o]}return t[s+8]=o,s}function zt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ut(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function qt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=t[6],r=1;for(;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Wt(e,t,n){!function(e,t,n){let r="string"!=typeof n?n[Ce]:n.charCodeAt(0)||0;null==r&&(r=n[Ce]=$t++);const o=255&r,s=1<>16,a=o?l+c:e.directiveEnd;for(let h=r?l:l+c;h=u&&e.type===n)return h}if(o){const e=i[u];if(e&&nt(e)&&e.type===n)return u}return null}(l,i,n,null==r?function(e){return 2==(2&e.flags)}(l)&&Lt:r!=i&&3===l.type,o&Q.Host&&s===l);return null!==u?Jt(t,i,u,l):Qt}function Jt(e,t,n,r){let o=e[n];const s=t.data;if(o instanceof It){const i=o;if(i.resolving)throw new Error(`Circular dep for ${Ht(s[n])}`);const l=Zt(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=Oe(i.injectImpl)),pt(e,r);try{o=e[n]=i.factory(void 0,s,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{onChanges:r,onInit:o,doCheck:s}=t;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s))}(n,s[n],t)}finally{i.injectImpl&&Oe(u),Zt(l),i.resolving=!1,vt()}}return o}function Kt(e,t,n){const r=64&e,o=32&e;let s;return s=128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t],!!(s&1<0?255&t:t}(n);if("function"==typeof o){pt(t,e);try{const e=o();if(null!=e||r&Q.Optional)return e;throw new Error(`No provider for ${Ht(n)}!`)}finally{vt()}}else if("number"==typeof o){if(-1===o)return new Xt(e,t);let s=null,i=Ut(e,t),l=-1,u=r&Q.Host?t[16][6]:null;for((-1===i||r&Q.SkipSelf)&&(l=-1===i?qt(e,t):t[i+8],Yt(r,!1)?(s=t[1],i=jt(l),t=Mt(l,t)):i=-1);-1!==i;){l=t[i+8];const e=t[1];if(Kt(o,i,e.data)){const e=Gt(i,t,n,s,r,u);if(e!==Qt)return e}Yt(r,t[1].data[i+8]===u)&&Kt(o,i,t)?(s=e,i=jt(l),t=Mt(l,t)):i=-1}}}if(r&Q.Optional&&void 0===o&&(o=null),0==(r&(Q.Self|Q.Host))){const e=t[9],s=Oe(void 0);try{return e?e.get(n,o,r&Q.Optional):Re(n,o,r&Q.Optional)}finally{Oe(s)}}if(r&Q.Optional)return o;throw new Error(`NodeInjector: NOT_FOUND [${Ht(n)}]`)}(this._tNode,this._lView,e,void 0,t)}}function en(e){return e.ngDebugContext}function tn(e){return e.ngOriginalError}function nn(e,...t){e.error(...t)}class rn{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e.ngErrorLogger||nn}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?en(e)?en(e):this._findContext(tn(e)):null}_findOriginalError(e){let t=tn(e);for(;t&&tn(t);)t=tn(t);return t}}let on=!0,sn=!1;function ln(){return sn=!0,on}function un(e){for(;Array.isArray(e);)e=e[0];return e}function cn(e,t){return un(t[e.index])}function an(e,t){const n=t[e];return Xe(n)?n:n[0]}function hn(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function dn(e){return 128==(128&e[2])}function fn(e,t){return null===e||null==t?null:e[t]}function pn(e){e[18]=0}function _n(e,t){e.__ngContext__=t}function mn(e){throw new Error(`Multiple components match node with tagname ${e.tagName}`)}function yn(){throw new Error("Cannot mix multi providers and regular providers")}function gn(e,t,n){let r=e.length;for(;;){const o=e.indexOf(t,n);if(-1===o)return o;if(0===o||e.charCodeAt(o-1)<=32){const n=t.length;if(o+n===r||e.charCodeAt(o+n)<=32)return o}n=o+1}}function vn(e,t,n){let r=0;for(;rs?"":o[a+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==gn(t,c,0)||2&r&&c!==e){if(Cn(r))return!1;i=!0}}}}else{if(!i&&!Cn(r)&&!Cn(u))return!1;if(i&&Cn(u))continue;i=!1,r=u|1&r}}return Cn(r)||i}function Cn(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let n=!1;for(;o-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?o+="."+i:4&r&&(o+=" "+i);else""===o||Cn(i)||(t+=kn(s,o),o=""),r=i,s=s||!Cn(r);n++}return""!==o&&(t+=kn(s,o)),t}const Sn={};function In(e){const t=e[3];return et(t)?t[3]:t}function An(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;r>1==-1){for(let e=9;e19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){const n=e.preOrderCheckHooks;null!==n&&xt(t,n,0)}else{const n=e.preOrderHooks;null!==n&&Et(t,n,0,0)}bt(0)}(e,t,0,at()),n(r,o)}finally{bt(s)}}function Hn(e){return e.tView||(e.tView=Fn(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Fn(e,t,n,r,o,s,i,l,u,c){const a=19+r,h=a+o,d=function(e,t){const n=[];for(let r=0;rPromise.resolve(null))();function ir(e,t){const n=t[3];return-1===e.index?et(n)?n:null:n}function lr(e,t,n,r,o){if(null!=r){let s,i=!1;et(r)?s=r:Xe(r)&&(i=!0,r=r[0]);const l=un(r);0===e&&null!==n?null==o?hr(t,n,l):ar(t,n,l,o||null):1===e&&null!==n?ar(t,n,l,o||null):2===e?function(e,t,n){const r=fr(e,t);r&&function(e,t,n,r){Dt(e)?e.removeChild(t,n,r):t.removeChild(n)}(e,r,t,n)}(t,l,i):3===e&&t.destroyNode(l),null!=s&&function(e,t,n,r,o){const s=n[7];s!==un(n)&&lr(t,e,r,s,o);for(let i=9;i=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t);const n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();const r=t[17];if(null!==r&&et(t[3])){r!==t[3]&&function(e,t){const n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);const n=t[5];null!==n&&n.detachView(e)}}}function ar(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function hr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function dr(e,t,n,r){null!==r?ar(e,t,n,r):hr(e,t,n)}function fr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function pr(e,t,n,r){const o=function(e,t,n){let r=t.parent;for(;null!=r&&(4===r.type||5===r.type);)r=(t=r).parent;if(null==r){const e=n[6];return 2===e.type?function(e,t){const n=ir(e,t);return n?fr(t[11],n[7]):null}(e,n):n[0]}if(t&&5===t.type&&4&t.flags)return cn(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Le.ShadowDom&&n!==Le.Native)return null}return cn(r,n)}(e,r,t);if(null!=o){const e=t[11],s=function(e,t){if(2===e.type){const n=ir(e,t);return null===n?null:function e(t,n){const r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){const n=t[11];Dt(n)&&n.destroyNode&&mr(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return cr(e[1],e);for(;t;){let n=null;if(Xe(t))n=t[13];else{const e=t[9];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)Xe(t)&&cr(t[1],t),t=ur(t,e);null===t&&(t=e),Xe(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}onDestroy(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}markForCheck(){!function(e){for(;e;){e[2]|=64;const t=In(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){nr(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){ht(!0);try{nr(e,t,n)}finally{ht(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,mr(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}{constructor(e){super(e),this._view=e}detectChanges(){rr(this._view)}checkNoChanges(){!function(e){ht(!0);try{rr(e)}finally{ht(!1)}}(this._view)}get context(){return null}}let br;function Cr(e,t,n){return br||(br=class extends e{}),new br(cn(t,n))}const xr=new xe("Set Injector scope."),Er={},kr={},Tr=[];let Sr=void 0;function Ir(){return void 0===Sr&&(Sr=new Me),Sr}function Ar(e,t=null,n=null,r){return t=t||Ir(),new Dr(e,n,t,r)}class Dr{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const o=[];t&&Fe(t,n=>this.processProvider(n,e,t)),Fe([e],e=>this.processInjectorType(e,[],o)),this.records.set(Ee,Nr(void 0,this));const s=this.records.get(xr);this.scope=null!=s?s.value:null,this.injectorDefTypes.forEach(e=>this.get(e)),this.source=r||("object"==typeof e?null:ie(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=ke,n=Q.Default){this.assertNotDestroyed();const r=De(this);try{if(!(n&Q.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(o=e)||"object"==typeof o&&o instanceof xe)&&Y(e);t=n&&this.injectableDefInScope(n)?Nr(Or(e),Er):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&Q.Self?Ir():this.parent).get(e,t=n&Q.Optional&&t===ke?null:t)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(ie(e)),r)throw s;return function(e,t,n,r){const o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let o=ie(t);if(Array.isArray(t))o=t.map(ie).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):ie(r)))}o=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Te,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(s,e,"R3InjectorError",this.source)}throw s}finally{De(r)}var o}toString(){const e=[];return this.records.forEach((t,n)=>e.push(ie(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=ae(e)))return!1;let r=ee(e);const o=null==r&&e.ngModule||void 0,s=void 0===o?e:o,i=-1!==n.indexOf(s);if(void 0!==o&&(r=ee(o)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(s);try{Fe(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Tr))}}this.injectorDefTypes.add(s),this.records.set(s,Nr(r.factory,Er));const l=r.providers;if(null!=l&&!i){const t=e;Fe(l,e=>this.processProvider(e,t,l))}return void 0!==o&&void 0!==e.providers}processProvider(e,t,n){let r=Rr(e=ae(e))?e:ae(e&&e.provide);const o=function(e,t,n){return Pr(e)?Nr(void 0,e.useValue):Nr(function(e,t,n){let r=void 0;if(Rr(e))return Or(ae(e));if(Pr(e))r=()=>ae(e.useValue);else if((o=e)&&o.useFactory)r=()=>e.useFactory(...je(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Pe(ae(e.useExisting));else{const o=ae(e&&(e.useClass||e.provide));if(o||function(e,t,n){let r="";throw e&&t&&(r=` - only instances of Provider and Type are allowed, got: [${t.map(e=>e==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${ie(e)}'`+r)}(t,n,e),!function(e){return!!e.deps}(e))return Or(o);r=()=>new o(...je(e.deps))}var o;return r}(e,t,n),Er)}(e,t,n);if(Rr(e)||!0!==e.multi){const e=this.records.get(r);e&&void 0!==e.multi&&yn()}else{let t=this.records.get(r);t?void 0===t.multi&&yn():(t=Nr(void 0,Er,!0),t.factory=()=>je(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,o)}hydrate(e,t){var n;return t.value===kr?function(e){throw new Error(`Cannot instantiate cyclic dependency! ${e}`)}(ie(e)):t.value===Er&&(t.value=kr,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function Or(e){const t=Y(e),n=null!==t?t.factory:Ke(e);if(null!==n)return n;const r=ee(e);if(null!==r)return r.factory;if(e instanceof xe)throw new Error(`Token ${ie(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function Nr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Pr(e){return null!==e&&"object"==typeof e&&Se in e}function Rr(e){return"function"==typeof e}const jr=function(e,t,n){return Ar({name:n},t,e,n)};let Mr=(()=>{class e{static create(e,t){return Array.isArray(e)?jr(e,t,""):jr(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=ke,e.NULL=new Me,e.\u0275prov=J({token:e,providedIn:"any",factory:()=>Pe(Ee)}),e.__NG_ELEMENT_ID__=-1,e})(),Hr=new Map;const Fr=new Set;function Vr(e){return"string"==typeof e?e:e.text()}function Lr(e,t){let n=e.styles,r=e.classes,o=0;for(let s=0;s{class e{}return e.NULL=new Kr,e})(),Xr=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>eo(e),e})();const eo=function(e){return Cr(e,lt(),st())};class to{}const no=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}();let ro=(()=>{class e{}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>null}),e})();class oo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const so=new oo("9.0.2");class io{constructor(){}supports(e){return zr(e)}create(e){return new uo(e)}}const lo=(e,t)=>t;class uo{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||lo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,o=null;for(;t||n;){const s=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==o&&Br(o.trackById,r)?(s&&(o=this._verifyReinsertion(o,e,r,t)),Br(o.item,e)||this._addIdentityChange(o,e)):(o=this._mismatch(o,e,r,t),s=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let o;return null===e?o=this._itTail:(o=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Br(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,o,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Br(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,o,r)):e=this._addAfter(new co(t,n),o,r),e}_verifyReinsertion(e,t,n,r){let o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?e=this._reinsertAfter(o,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,o=e._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new ho),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ho),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class co{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ao{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Br(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class ho{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new ao,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function fo(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}const n=new mo(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Br(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class mo{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let yo=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new io])}),e})(),go=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new W,new U]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=J({token:e,providedIn:"root",factory:()=>new e([new po])}),e})();const vo=[new po],wo=new yo([new io]),bo=new go(vo),Co={};function xo(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}const Eo=new xe("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Ft});class ko extends Jr{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Tn).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return xo(this.componentDef.inputs)}get outputs(){return xo(this.componentDef.outputs)}create(e,t,n,r){const o=(r=r||this.ngModule)?function(e,t){return{get:(n,r,o)=>{const s=e.get(n,Co,o);return s!==Co||r===Co?s:t.get(n,r,o)}}}(e,r.injector):e,s=o.get(to,Ot),i=o.get(ro,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(e,t,n){if(Dt(e))return e.selectRootElement(t,n===Le.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Dn(u,s.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d={components:[],scheduler:Ft,clean:sr,playerHandler:null,flags:0},f=Fn(0,-1,null,1,0,null,null,null,null,null),p=On(null,f,d,a,null,null,s,l,i,o);let _,m;_t(p,null);try{const e=function(e,t,n,r,o,s){const i=n[1];n[19]=e;const l=Nn(i,null,0,3,null,null),u=l.mergedAttrs=t.hostAttrs;null!==u&&(Lr(l,u),null!==e&&(Nt(o,e,u),null!==l.classes&&vr(o,e,l.classes),null!==l.styles&&gr(o,e,l.styles)));const c=r.createRenderer(e,t),a=On(n,Hn(t),null,t.onPush?64:16,n[19],l,r,c,void 0);return i.firstCreatePass&&(Wt(Bt(l,n),i,t.type),Un(i,l),Wn(l,n.length,1)),tr(n,a),n[19]=a}(c,this.componentDef,p,s,l);if(c)if(n)Nt(l,c,["ng-version",so.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,o=2;for(;r0&&vr(l,c,t.join(" "))}m=p[1].data[19],t&&(m.projection=t.map(e=>Array.from(e))),_=function(e,t,n,r,o){const s=n[1],i=function(e,t,n){const r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),zn(e,r,1),Qn(e,t,n));const o=Jt(t,e,t.length-1,r);_n(o,t);const s=cn(r,t);return s&&_n(s,t),o}(s,n,t);r.components.push(i),e[8]=i,o&&o.forEach(e=>e(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=lt();if(s.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){bt(l.index-19);const e=n[1];Zn(e,t),$n(e,n,t.hostVars),Bn(t,i)}return i}(e,this.componentDef,p,d,[Gr]),Pn(f,p,null)}finally{wt()}const y=new To(this.componentType,_,Cr(Xr,m,p),p,m);return n&&!h||(y.hostView._tViewNode.child=m),y}}class To extends class{}{constructor(e,t,n,r,o){super(),this.location=n,this._rootLView=r,this._tNode=o,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new wr(r),this.hostView._tViewNode=function(e,t,n,r){let o=e.node;return null==o&&(e.node=o=Vn(0,null,2,-1,null,null)),r[6]=o}(r[1],0,0,r),this.componentType=e}get injector(){return new Xt(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const So=void 0;var Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let Ao={};function Do(e){return e in Ao||(Ao[e]=_e.ng&&_e.ng.common&&_e.ng.common.locales&&_e.ng.common.locales[e]),Ao[e]}const Oo=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();let No="en-US";function Po(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(No=e.toLowerCase().replace(/_/g,"-"))}const Ro=new Map,jo={provide:Yr,useClass:class extends Yr{constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){const t=Je(e);return new ko(t,this.ngModule)}},deps:[He]};class Mo extends He{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=Ye(e),r=e[we]||null;r&&Po(r),this._bootstrapComponents=Vt(n.bootstrap),this._r3Injector=Ar(e,t,[{provide:He,useValue:this},jo],ie(e)),this.instance=this.get(e)}get(e,t=Mr.THROW_IF_NOT_FOUND,n=Q.Default){return e===Mr||e===He||e===Ee?this:this._r3Injector.get(e,t,n)}get componentFactoryResolver(){return this.get(Yr)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ho extends class{}{constructor(e){super(),this.moduleType=e,null!==Ye(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${ie(t)} vs ${ie(t.name)}`)})(e,Ro.get(e),t),Ro.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Mo(this.moduleType,e)}}class Fo extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,o=e=>null,s=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(o=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(s=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(o=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,o,s);return e instanceof h&&e.add(i),i}}const Vo=new xe("Application Initializer");let Lo=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Pe(Vo,8))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Zo=new xe("AppId"),$o={provide:Zo,useFactory:function(){return`${Bo()}${Bo()}${Bo()}`},deps:[]};function Bo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const zo=new xe("Platform Initializer"),Uo=new xe("Platform ID"),qo=new xe("appBootstrapListener");let Wo=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Qo=new xe("LocaleId"),Go=new xe("DefaultCurrencyCode");class Jo{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ko=function(e){return new Ho(e)},Yo=Ko,Xo=function(e){return Promise.resolve(Ko(e))},es=function(e){const t=Ko(e),n=Vt(Ye(e).declarations).reduce((e,t)=>{const n=Je(t);return n&&e.push(new ko(n)),e},[]);return new Jo(t,n)},ts=es,ns=function(e){return Promise.resolve(es(e))};let rs=(()=>{class e{constructor(){this.compileModuleSync=Yo,this.compileModuleAsync=Xo,this.compileModuleAndAllComponentsSync=ts,this.compileModuleAndAllComponentsAsync=ns}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const os=new xe("compilerOptions"),ss=(()=>Promise.resolve(0))();function is(e){"undefined"==typeof Zone?ss.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class ls{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Fo(!1),this.onMicrotaskEmpty=new Fo(!1),this.onStable=new Fo(!1),this.onError=new Fo(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=t,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let e=_e.requestAnimationFrame,t=_e.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(_e,()=>{e.lastRequestAnimationFrameId=-1,hs(e),as(e)}),hs(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,o,s,i,l)=>{try{return ds(e),n.invokeTask(o,s,i,l)}finally{t&&"eventTask"===s.type&&t(),fs(e)}},onInvoke:(t,n,r,o,s,i,l)=>{try{return ds(e),t.invoke(r,o,s,i,l)}finally{fs(e)}},onHasTask:(t,n,r,o)=>{t.hasTask(r,o),n===r&&("microTask"==o.change?(e._hasPendingMicrotasks=o.microTask,hs(e),as(e)):"macroTask"==o.change&&(e.hasPendingMacrotasks=o.macroTask))},onHandleError:(t,n,r,o)=>(t.handleError(r,o),e.runOutsideAngular(()=>e.onError.emit(o)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ls.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(ls.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,e,cs,us,us);try{return o.runTask(s,t,n)}finally{o.cancelTask(s)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function us(){}const cs={};function as(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function hs(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function ds(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function fs(e){e._nesting--,as(e)}class ps{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Fo,this.onMicrotaskEmpty=new Fo,this.onStable=new Fo,this.onError=new Fo}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let _s=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ls.assertNotInAngularZone(),is(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())is(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),ms=(()=>{class e{constructor(){this._applications=new Map,vs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return vs.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ys{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let gs,vs=new ys,ws=function(e,t,n){const r=new Ho(n);if(0===Hr.size)return Promise.resolve(r);const o=function(e){const t=[];return e.forEach(e=>e&&t.push(...e)),t}(e.get(os,[]).concat(t).map(e=>e.providers));if(0===o.length)return Promise.resolve(r);const s=function(){const e=_e.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),i=Mr.create({providers:o}).get(s.ResourceLoader);return function(e){const t=[],n=new Map;function r(e){let t=n.get(e);if(!t){const r=(e=>Promise.resolve(i.get(e)))(e);n.set(e,t=r.then(Vr))}return t}return Hr.forEach((e,n)=>{const o=[];e.templateUrl&&o.push(r(e.templateUrl).then(t=>{e.template=t}));const s=e.styleUrls,i=e.styles||(e.styles=[]),l=e.styles.length;s&&s.forEach((t,n)=>{i.push(""),o.push(r(t).then(r=>{i[l+n]=r,s.splice(s.indexOf(t),1),0==s.length&&(e.styleUrls=void 0)}))});const u=Promise.all(o).then(()=>function(e){Fr.delete(e)}(n));t.push(u)}),Hr=new Map,Promise.all(t).then(()=>{})}().then(()=>r)};const bs=new xe("AllowMultipleToken");function Cs(e,t,n=[]){const r=`Platform: ${t}`,o=new xe(r);return(t=[])=>{let s=xs();if(!s||s.injector.get(bs,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{const e=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(gs&&!gs.destroyed&&!gs.injector.get(bs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");gs=e.get(Es);const t=e.get(zo,null);t&&t.forEach(e=>e())}(Mr.create({providers:e,name:r}))}return function(e){const t=xs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function xs(){return gs&&!gs.destroyed?gs:null}let Es=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ps:("zone.js"===e?void 0:e)||new ls({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:ls,useValue:n}];return n.run(()=>{const t=Mr.create({providers:r,parent:this.injector,name:e.moduleType.name}),o=e.create(t),s=o.injector.get(rn,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(()=>Ss(this._modules,o)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{s.handleError(e)}})),function(e,t,n){try{const r=n();return Qr(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(s,n,()=>{const e=o.injector.get(Lo);return e.runInitializers(),e.donePromise.then(()=>(Po(o.injector.get(Qo,"en-US")||"en-US"),this._moduleDoBootstrap(o),o))})})}bootstrapModule(e,t=[]){const n=ks({},t);return ws(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ts);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${ie(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Pe(Mr))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function ks(e,t){return Array.isArray(t)?t.reduce(ks,e):Object.assign(Object.assign({},e),t)}let Ts=(()=>{class e{constructor(e,t,n,r,o,s){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new g(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{ls.assertNotInAngularZone(),is(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{ls.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var o;return(o=r)&&"function"==typeof o.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof g?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?o=>o.pipe(e((e,r)=>{return(o=t(e,r),o instanceof g?o:new g(A(o))).pipe(function(e,t){return function(t){return t.lift(new O(e,void 0))}}((t,o)=>n(e,t,r,o)));var o},r)):("number"==typeof n&&(r=n),e=>e.lift(new P(t,r)))}(j,e)}(t)(function(e,t){return t?function(e,t){return new g(n=>{const r=new h;let o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}(e,t):new g(T(e))}(e,n))}(i,l.pipe(e=>{return M()((t=$,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,L);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Jr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(He),o=n.create(Mr.NULL,[],t||n.selector,r);o.onDestroy(()=>{this._unloadComponent(o)});const s=o.injector.get(_s,null);return s&&o.injector.get(ms).registerApplication(o.location.nativeElement,s),this._loadComponent(o),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Ss(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(qo,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Ss(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Pe(ls),Pe(Wo),Pe(Mr),Pe(rn),Pe(Yr),Pe(Lo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();function Ss(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Is=Cs(null,"core",[{provide:Uo,useValue:"unknown"},{provide:Es,deps:[Mr]},{provide:ms,deps:[]},{provide:Wo,deps:[]}]),As=[{provide:Ts,useClass:Ts,deps:[ls,Wo,Mr,rn,Yr,Lo]},{provide:Eo,deps:[ls],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Lo,useClass:Lo,deps:[[new U,Vo]]},{provide:rs,useClass:rs,deps:[]},$o,{provide:yo,useFactory:function(){return wo},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Po(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new z(Qo),new U,new W]]},{provide:Go,useValue:"USD"}];let Ds=(()=>{class e{constructor(e){}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(Ts))},providers:As}),e})(),Os=null;function Ns(){return Os}const Ps=new xe("DocumentToken"),Rs=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}();class js{}let Ms=(()=>{class e extends js{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Do(t);if(n)return n;const r=t.split("-")[0];if(n=Do(r),n)return n;if("en"===r)return Io;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Oo.PluralCase]}(t||this.locale)(e)){case Rs.Zero:return"zero";case Rs.One:return"one";case Rs.Two:return"two";case Rs.Few:return"few";case Rs.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Qo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Hs=(()=>{class e{}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[{provide:js,useClass:Ms}]}),e})();class Fs extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Fs,Os||(Os=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Ls||(Ls=document.querySelector("base"),Ls)?Ls.getAttribute("href"):null;return null==t?null:(n=t,Vs||(Vs=document.createElement("a")),Vs.setAttribute("href",n),"/"===Vs.pathname.charAt(0)?Vs.pathname:"/"+Vs.pathname);var n}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return function(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,o]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(o)}return null}(document.cookie,e)}}let Vs,Ls=null;const Zs=new xe("TRANSITION_ID"),$s=[{provide:Vo,useFactory:function(e,t,n){return()=>{n.get(Lo).donePromise.then(()=>{const n=Ns();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Zs,Ps,Mr],multi:!0}];class Bs{static init(){var e;e=new Bs,vs=e}addToWindow(e){_e.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},_e.getAllAngularTestabilities=()=>e.getAllTestabilities(),_e.getAllAngularRootElements=()=>e.getAllRootElements(),_e.frameworkStabilizers||(_e.frameworkStabilizers=[]),_e.frameworkStabilizers.push(e=>{const t=_e.getAllAngularTestabilities();let n=t.length,r=!1;const o=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(o)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Ns().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const zs=new xe("EventManagerPlugins");let Us=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})(),Qs=(()=>{class e extends Ws{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Ns().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const Gs={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/"},Js=/%COMP%/g;function Ks(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Xs=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new ei(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Le.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new ti(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Le.Native:case Le.ShadowDom:return new ni(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Ks(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Pe(Us),Pe(Qs),Pe(Zo))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();class ei{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Gs[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const o=Gs[r];o?e.setAttributeNS(o,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Gs[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&no.DashCase?e.style.setProperty(t,n,r&no.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&no.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Ys(n)):this.eventManager.addEventListener(e,t,Ys(n))}}class ti extends ei{constructor(e,t,n,r){super(e),this.component=n;const o=Ks(r+"-"+n.id,n.styles,[]);t.addStyles(o),this.contentAttr="_ngcontent-%COMP%".replace(Js,r+"-"+n.id),this.hostAttr=function(e){return"_nghost-%COMP%".replace(Js,e)}(r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ni extends ei{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Le.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const o=Ks(r.id,r.styles,[]);for(let s=0;s{class e extends qs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const oi=["alt","control","meta","shift"],si={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ii={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},li={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ui=(()=>{class e extends qs{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const o=e.parseEventName(n),s=e.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ns().onAndCancel(t,o.domEventName,s))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const o=e._normalizeKey(n.pop());let s="";if(oi.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),s+=e+".")}),s+=o,0!=n.length||0===o.length)return null;const i={};return i.domEventName=r,i.fullKey=s,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&ii.hasOwnProperty(t)&&(t=ii[t]))}return si[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),oi.forEach(r=>{r!=n&&(0,li[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return o=>{e.getEventFullKey(o)===t&&r.runGuarded(()=>n(o))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Pe(Ps))},e.\u0275prov=J({token:e,factory:e.\u0275fac}),e})();const ci=Cs(Is,"browser",[{provide:Uo,useValue:"browser"},{provide:zo,useValue:function(){Fs.makeCurrent(),Bs.init()},multi:!0},{provide:Ps,useFactory:function(){return function(e){At=e}(document),document},deps:[]}]),ai=[[],{provide:xr,useValue:"root"},{provide:rn,useFactory:function(){return new rn},deps:[]},{provide:zs,useClass:ri,multi:!0,deps:[Ps,ls,Uo]},{provide:zs,useClass:ui,multi:!0,deps:[Ps]},[],{provide:Xs,useClass:Xs,deps:[Us,Qs,Zo]},{provide:to,useExisting:Xs},{provide:Ws,useExisting:Qs},{provide:Qs,useClass:Qs,deps:[Ps]},{provide:_s,useClass:_s,deps:[ls]},{provide:Us,useClass:Us,deps:[zs,ls]},[]];let hi=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:Zo,useValue:t.appId},{provide:Zs,useExisting:Zo},$s]}}}return e.\u0275mod=Qe({type:e}),e.\u0275inj=K({factory:function(t){return new(t||e)(Pe(e,12))},providers:ai,imports:[Hs,Ds]}),e})();"undefined"!=typeof window&&window;let di=(()=>{class e{constructor(){this.title="example"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=function(e){const t=e.type,n=t.prototype,r={},o={type:t,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:r,inputs:null,outputs:null,exportAs:e.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:e.changeDetection===Ve.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Be,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Le.Emulated,id:"c",styles:e.styles||Be,_:null,setInput:null,schemas:e.schemas||null,tView:null};return o._=Ze(()=>{const t=e.directives,n=e.features,s=e.pipes;o.id+=ze++,o.inputs=Ge(e.inputs,r),o.outputs=Ge(e.outputs),n&&n.forEach(e=>e(o)),o.directiveDefs=t?()=>("function"==typeof t?t():t).map(Ue):null,o.pipeDefs=s?()=>("function"==typeof s?s():s).map(qe):null}),o}({type:e,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(Wr(0,"div",0),function(e,t=""){const n=st(),r=it(),o=e+19,s=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],i=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);pr(r,n,i,s),ut(s,!1)}(1," Hello, World\n"),function(){let e=lt();ct()?rt.lFrame.isParent=!1:(e=e.parent,ut(e,!1));const t=e;rt.lFrame.elementDepthCount--;const n=it();n.firstCreatePass&&(Ct(n,e),tt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&qr(n,t,st(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&qr(n,t,st(),t.styles,!1)}())},styles:[""]}),e})(),fi=(()=>{class e{}return e.\u0275mod=Qe({type:e,bootstrap:[di]}),e.\u0275inj=K({factory:function(t){return new(t||e)},providers:[],imports:[[hi]]}),e})();(function(){if(sn)throw new Error("Cannot enable prod mode after platform setup.");on=!1})(),ci().bootstrapModule(fi).catch(e=>console.error(e))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 21 - Using and Creating Modules/End of Chapter/example/dist/example/main-es5.bde05668bf3f8343a347.js ================================================ function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function _iterableToArrayLimit(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(u){o=!0,i=u}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;_classCallCheck(this,e),this.project=t,this.concurrent=n}return _createClass(e,[{key:"call",value:function(e,t){return t.subscribe(new H(e,this.project,this.concurrent))}}]),e}(),H=function(e){function t(e,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).project=n,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return _inherits(t,e),_createClass(t,[{key:"_next",value:function(e){this.active4&&void 0!==arguments[4]?arguments[4]:new I(e,n,r);if(!o.closed)return t instanceof k?t.subscribe(o):P(t)(o)}(this,e,void 0,void 0,r);i!==r&&o.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e,t,n,r,o){this.destination.next(t)}},{key:"notifyComplete",value:function(e){var t=this.buffer;this.remove(e),this.active--,t.length>0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),t}(D);function M(e){return e}function F(){return function(e){return e.lift(new L(e))}}var V,L=function(){function e(t){_classCallCheck(this,e),this.connectable=t}return _createClass(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var r=new z(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o}}]),e}(),z=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null}}]),t}(p),Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:(V=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return _inherits(t,e),_createClass(t,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new B(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}},{key:"refCount",value:function(){return F()(this)}}]),t}(k).prototype)._subscribe},_isComplete:{value:V._isComplete,writable:!0},getSubject:{value:V.getSubject},connect:{value:V.connect},refCount:{value:V.refCount}},B=function(e){function t(e,n){var r;return _classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this,e))).connectable=n,r}return _inherits(t,e),_createClass(t,[{key:"_error",value:function(e){this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),_get(_getPrototypeOf(t.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),t}(x);function U(){return new T}function W(e,t,n){var r=function(e){return function(){if(e){var t=e.apply(void 0,arguments);for(var n in t)this[n]=t[n]}}}(t);function o(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:K.Default;if(void 0===Pe)throw new Error("inject() must be called from an injection context");return null===Pe?He(e,void 0,t):Pe.get(e,t&K.Optional?null:void 0,t)}function je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.Default;return(de||Ne)(he(e),t)}function He(e,t,n){var r=ee(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&K.Optional)return null;if(void 0!==t)return t;throw new Error("Injector: NOT_FOUND [".concat(ue(e),"]"))}function Me(e){for(var t=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:Ie;if(t===Ie){var n=new Error("NullInjectorError: No provider for ".concat(ue(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),Ve=function e(){_classCallCheck(this,e)};function Le(e,t){e.forEach((function(e){return Array.isArray(e)?Le(e,t):t(e)}))}var ze=function(){var e={OnPush:0,Default:1};return e[e.OnPush]="OnPush",e[e.Default]="Default",e}(),Ze=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}();function Be(e){return""+{toString:e}}var Ue={},We=[],qe=0;function Qe(e){return $e(e)||function(e){return e[ke]||null}(e)}function Ge(e){return function(e){return e[be]||null}(e)}var Je={};function Ke(e){var t={type:e.type,bootstrap:e.bootstrap||We,declarations:e.declarations||We,imports:e.imports||We,exports:e.exports||We,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&Be((function(){Je[e.id]=e.type})),t}function Ye(e,t){if(null==e)return Ue;var n={};for(var r in e)if(e.hasOwnProperty(r)){var o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function $e(e){return e[me]||null}function Xe(e,t){return e.hasOwnProperty(Ee)?e[Ee]:null}function et(e,t){var n=e[we]||null;if(!n&&!0===t)throw new Error("Type ".concat(ue(e)," does not have '\u0275mod' property."));return n}function tt(e){return Array.isArray(e)&&"object"==typeof e[1]}function nt(e){return Array.isArray(e)&&!0===e[1]}function rt(e){return 0!=(8&e.flags)}function ot(e){return null!==e.template}var it={lFrame:mt(null),bindingsEnabled:!0,checkNoChangesMode:!1};function st(){return it.bindingsEnabled}function at(){return it.lFrame.lView}function ut(){return it.lFrame.tView}function lt(){return it.lFrame.previousOrParentTNode}function ct(e,t){it.lFrame.previousOrParentTNode=e,it.lFrame.isParent=t}function ft(){return it.lFrame.isParent}function ht(){return it.checkNoChangesMode}function dt(e){it.checkNoChangesMode=e}function vt(e,t){var n=it.lFrame;n.bindingIndex=n.bindingRootIndex=e,n.currentDirectiveIndex=t}function pt(e){it.lFrame.currentQueryIndex=e}function yt(e,t){var n=gt();it.lFrame=n,n.previousOrParentTNode=t,n.lView=e}function _t(e,t){var n=gt(),r=e[1];it.lFrame=n,n.previousOrParentTNode=t,n.lView=e,n.tView=r,n.contextLView=e,n.bindingIndex=r.bindingStartIndex}function gt(){var e=it.lFrame,t=null===e?null:e.child;return null===t?mt(e):t}function mt(e){var t={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function kt(){var e=it.lFrame;return it.lFrame=e.parent,e.previousOrParentTNode=null,e.lView=null,e}var bt=kt;function wt(){var e=kt();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.currentSanitizer=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ct(e){it.lFrame.selectedIndex=e}function Et(e,t){for(var n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[s]<0&&(e[18]+=65536),(i>10>16&&(3&e[2])===t&&(e[2]+=1024,i.call(s)):i.call(s)}var Ot=function e(t,n,r){_classCallCheck(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r},Pt=void 0;function Dt(e){return!!e.listen}var Rt={createRenderer:function(e,t){return void 0!==Pt?Pt:"undefined"!=typeof document?document:void 0}};function Nt(e,t,n){for(var r=Dt(e),o=0;ot){s=i-1;break}}}for(;i>16,r=t;n>0;)r=r[15],n--;return r}function Vt(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():function(e){return"string"==typeof e?e:null==e?"":""+e}(e)}var Lt=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(ge);function zt(e){return e instanceof Function?e():e}var Zt=!0;function Bt(e){var t=Zt;return Zt=e,t}var Ut=0;function Wt(e,t){var n=Qt(e,t);if(-1!==n)return n;var r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,qt(r.data,e),qt(t,null),qt(r.blueprint,null));var o=Gt(e,t),i=e.injectorIndex;if(-1!==o)for(var s=Mt(o),a=Ft(o,t),u=a[1].data,l=0;l<8;l++)t[i+l]=a[s+l]|u[s+l];return t[i+8]=o,i}function qt(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Qt(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null==t[e.injectorIndex+8]?-1:e.injectorIndex}function Gt(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=t[6],r=1;n&&-1===n.injectorIndex;)n=(t=t[15])?t[6]:null,r++;return n?n.injectorIndex|r<<16:-1}function Jt(e,t,n){!function(e,t,n){var r="string"!=typeof n?n[xe]:n.charCodeAt(0)||0;null==r&&(r=n[xe]=Ut++);var o=255&r,i=1<>16,c=o?a+l:e.directiveEnd,f=r?a:a+l;f=u&&h.type===n)return f}if(o){var d=s[u];if(d&&ot(d)&&d.type===n)return u}return null}(a,s,n,null==r?function(e){return 2==(2&e.flags)}(a)&&Zt:r!=s&&3===a.type,o&K.Host&&i===a);return null!==u?$t(t,s,u,a):Kt}function $t(e,t,n,r){var o=e[n],i=t.data;if(o instanceof Ot){var s=o;if(s.resolving)throw new Error("Circular dep for ".concat(Vt(i[n])));var a,u=Bt(s.canSeeViewProviders);s.resolving=!0,s.injectImpl&&(a=Re(s.injectImpl)),yt(e,r);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){var r=t.onChanges,o=t.onInit,i=t.doCheck;r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)),o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-e,o),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,i))}(n,i[n],t)}finally{s.injectImpl&&Re(a),Bt(u),s.resolving=!1,bt()}}return o}function Xt(e,t,n){var r=64&e,o=32&e;return!!((128&e?r?o?n[t+7]:n[t+6]:o?n[t+5]:n[t+4]:r?o?n[t+3]:n[t+2]:o?n[t+1]:n[t])&1<3&&void 0!==arguments[3]?arguments[3]:K.Default,i=arguments.length>4?arguments[4]:void 0;if(null!==t){var s=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e[xe];return"number"==typeof t&&t>0?255&t:t}(r);if("function"==typeof s){yt(n,t);try{var a=s();if(null!=a||o&K.Optional)return a;throw new Error("No provider for ".concat(Vt(r),"!"))}finally{bt()}}else if("number"==typeof s){if(-1===s)return new e(t,n);var u=null,l=Qt(t,n),c=-1,f=o&K.Host?n[16][6]:null;for((-1===l||o&K.SkipSelf)&&(c=-1===l?Gt(t,n):n[l+8],en(o,!1)?(u=n[1],l=Mt(c),n=Ft(c,n)):l=-1);-1!==l;){c=n[l+8];var h=n[1];if(Xt(s,l,h.data)){var d=Yt(l,n,r,u,o,f);if(d!==Kt)return d}en(o,n[1].data[l+8]===f)&&Xt(s,l,n)?(u=h,l=Mt(c),n=Ft(c,n)):l=-1}}}if(o&K.Optional&&void 0===i&&(i=null),0==(o&(K.Self|K.Host))){var v=n[9],p=Re(void 0);try{return v?v.get(r,i,o&K.Optional):He(r,i,o&K.Optional)}finally{Re(p)}}if(o&K.Optional)return i;throw new Error("NodeInjector: NOT_FOUND [".concat(Vt(r),"]"))}(this._tNode,this._lView,t,void 0,n)}}]),e}();function nn(e){return e.ngDebugContext}function rn(e){return e.ngOriginalError}function on(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;ri?"":o[c+1].toLowerCase();var h=8&r?f:null;if(h&&-1!==kn(h,l,0)||2&r&&l!==f){if(En(r))return!1;s=!0}}}}else{if(!s&&!En(r)&&!En(u))return!1;if(s&&En(u))continue;s=!1,r=u|1&r}}return En(r)||s}function En(e){return 0==(1&e)}function xn(e,t,n,r){if(null===t)return-1;var o=0;if(r||!n){for(var i=!1;o-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],r=0;r0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""===o||En(s)||(t+=Sn(i,o),o=""),r=s,i=i||!En(r);n++}return""!==o&&(t+=Sn(i,o)),t}var An={};function On(e){var t=e[3];return nt(t)?t[3]:t}function Pn(e,t){var n=e.contentQueries;if(null!==n)for(var r=0;r>1==-1){for(var r=9;r19&&function(e,t,n,r){if(!r)if(3==(3&t[2])){var o=e.preOrderCheckHooks;null!==o&&xt(t,o,0)}else{var i=e.preOrderHooks;null!==i&&Tt(t,i,0,0)}Ct(0)}(e,t,0,ht()),n(r,o)}finally{Ct(i)}}function Vn(e){return e.tView||(e.tView=Ln(1,-1,e.template,e.decls,e.vars,e.directiveDefs,e.pipeDefs,e.viewQuery,e.schemas,e.consts))}function Ln(e,t,n,r,o,i,s,a,u,l){var c=19+r,f=c+o,h=function(e,t){for(var n=[],r=0;r=0?r[u]():r[-u].unsubscribe(),o+=2}else n[o].call(r[n[o+1]]);t[7]=null}}(e,t);var n=t[6];n&&3===n.type&&Dt(t[11])&&t[11].destroy();var r=t[17];if(null!==r&&nt(t[3])){r!==t[3]&&function(e,t){var n=e[5],r=n.indexOf(t);n.splice(r,1)}(r,t);var o=t[5];null!==o&&o.detachView(e)}}}function hr(e,t,n,r){Dt(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function dr(e,t,n){Dt(e)?e.appendChild(t,n):t.appendChild(n)}function vr(e,t,n,r){null!==r?hr(e,t,n,r):dr(e,t,n)}function pr(e,t){return Dt(e)?e.parentNode(t):t.parentNode}function yr(e,t,n,r){var o=function(e,t,n){for(var r,o,i=t.parent;null!=i&&(4===i.type||5===i.type);)i=(t=i).parent;if(null==i){var s=n[6];return 2===s.type?(o=ur(s,r=n))?pr(r[11],o[7]):null:n[0]}if(t&&5===t.type&&4&t.flags)return fn(t,n).parentNode;if(2&i.flags){var a=e.data,u=a[a[i.index].directiveStart].encapsulation;if(u!==Ze.ShadowDom&&u!==Ze.Native)return null}return fn(i,n)}(e,r,t);if(null!=o){var i=t[11],s=function(e,t){if(2===e.type){var n=ur(e,t);return null===n?null:function e(t,n){var r=9+t+1;if(r-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}!function(e,t){if(!(256&t[2])){var n=t[11];Dt(n)&&n.destroyNode&&gr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return fr(e[1],e);for(;t;){var n=null;if(tt(t))n=t[13];else{var r=t[9];r&&(n=r)}if(!n){for(;t&&!t[4]&&t!==e;)tt(t)&&fr(t[1],t),t=cr(t,e);null===t&&(t=e),tt(t)&&fr(t[1],t),n=t&&t[4]}t=n}}(t)}}(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){var t,n,r,o;t=this._lView[1],r=e,(o=n=this._lView,o[7]||(o[7]=[])).push(r),t.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(t).push(n[7].length-1,null)}},{key:"markForCheck",value:function(){!function(e){for(;e;){e[2]|=64;var t=On(e);if(0!=(512&e[2])&&!t)return e;e=t}}(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){or(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){dt(!0);try{or(e,t,n)}finally{dt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,gr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}},{key:"rootNodes",get:function(){var e=this._lView;return null==e[0]?function e(t,n,r,o){for(var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];null!==r;){var s=n[r.index];if(null!==s&&o.push(cn(s)),nt(s))for(var a=9;a1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3?arguments[3]:void 0;return t=t||Or(),new Dr(e,n,t,r)}var Dr=function(){function e(t,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;_classCallCheck(this,e),this.parent=r,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var s=[];n&&Le(n,(function(e){return o.processProvider(e,t,n)})),Le([t],(function(e){return o.processInjectorType(e,[],s)})),this.records.set(Se,Nr(void 0,this));var a=this.records.get(xr);this.scope=null!=a?a.value:null,this.injectorDefTypes.forEach((function(e){return o.get(e)})),this.source=i||("object"==typeof t?null:ue(t))}return _createClass(e,[{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach((function(e){return e.ngOnDestroy()}))}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;this.assertNotDestroyed();var r,o=De(this);try{if(!(n&K.SkipSelf)){var i=this.records.get(e);if(void 0===i){var s=("function"==typeof(r=e)||"object"==typeof r&&r instanceof Te)&&ee(e);i=s&&this.injectableDefInScope(s)?Nr(Rr(e),Tr):null,this.records.set(e,i)}if(null!=i)return this.hydrate(e,i)}return(n&K.Self?Or():this.parent).get(e,t=n&K.Optional&&t===Ie?null:t)}catch(a){if("NullInjectorError"===a.name){if((a.ngTempTokenPath=a.ngTempTokenPath||[]).unshift(ue(e)),o)throw a;return function(e,t,n,r){var o=e.ngTempTokenPath;throw t.__source&&o.unshift(t.__source),e.message=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var o=ue(t);if(Array.isArray(t))o=t.map(ue).join(" -> ");else if("object"==typeof t){var i=[];for(var s in t)if(t.hasOwnProperty(s)){var a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ue(a)))}o="{".concat(i.join(", "),"}")}return"".concat(n).concat(r?"("+r+")":"","[").concat(o,"]: ").concat(e.replace(Ae,"\n "))}("\n"+e.message,o,"R3InjectorError",r),e.ngTokenPath=o,e.ngTempTokenPath=null,e}(a,e,0,this.source)}throw a}finally{De(o)}}},{key:"toString",value:function(){var e=[];return this.records.forEach((function(t,n){return e.push(ue(n))})),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var r=this;if(!(e=he(e)))return!1;var o=ne(e),i=null==o&&e.ngModule||void 0,s=void 0===i?e:i,a=-1!==n.indexOf(s);if(void 0!==i&&(o=ne(i)),null==o)return!1;if(null!=o.imports&&!a){var u;n.push(s);try{Le(o.imports,(function(e){r.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))}))}finally{}if(void 0!==u)for(var l=function(e){var t=u[e],n=t.ngModule,o=t.providers;Le(o,(function(e){return r.processProvider(e,n,o||Ir)}))},c=0;c0){var n=function(e,t){for(var n=[],r=0;r2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function jr(e){return null!==e&&"object"==typeof e&&Oe in e}function Hr(e){return"function"==typeof e}var Mr=function(e,t,n){return Pr({name:n},t,e,n)},Fr=function(){var e=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?Mr(e,t,""):Mr(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Ie,e.NULL=new Fe,e.\u0275prov=$({token:e,providedIn:"any",factory:function(){return je(Se)}}),e.__NG_ELEMENT_ID__=-1,e}(),Vr=new Map,Lr=new Set;function zr(e){return"string"==typeof e?e:e.text()}function Zr(e,t){for(var n=e.styles,r=e.classes,o=0,i=0;i0&&br(l,f,k.join(" "))}i=y[1].data[19],t&&(i.projection=t.map((function(e){return Array.from(e)}))),o=function(e,t,n,r,o){var i=n[1],s=function(e,t,n){var r=lt();e.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),qn(e,r,1),Kn(e,t,n));var o=$t(t,e,t.length-1,r);_n(o,t);var i=fn(r,t);return i&&_n(i,t),o}(i,n,t);r.components.push(s),e[8]=s,o&&o.forEach((function(e){return e(s,t)})),t.contentQueries&&t.contentQueries(1,s,n.length-1);var a=lt();if(i.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){Ct(a.index-19);var u=n[1];Bn(u,t),Un(u,n,t.hostVars),Wn(t,s)}return s}(_,this.componentDef,y,v,[Kr]),jn(p,y,null)}finally{wt()}var b=new To(this.componentType,o,Er(eo,i,y),y,i);return n&&!d||(b.hostView._tViewNode.child=i),b}},{key:"inputs",get:function(){return Co(this.componentDef.inputs)}},{key:"outputs",get:function(){return Co(this.componentDef.outputs)}}]),t}(Yr),To=function(e){function t(e,n,r,o,i){var s,a,u,l;return _classCallCheck(this,t),(s=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).location=r,s._rootLView=o,s._tNode=i,s.destroyCbs=[],s.instance=n,s.hostView=s.changeDetectorRef=new Cr(o),s.hostView._tViewNode=(a=o[1],u=o,null==(l=a.node)&&(a.node=l=zn(0,null,2,-1,null,null)),u[6]=l),s.componentType=e,s}return _inherits(t,e),_createClass(t,[{key:"destroy",value:function(){this.destroyCbs&&(this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}},{key:"onDestroy",value:function(e){this.destroyCbs&&this.destroyCbs.push(e)}},{key:"injector",get:function(){return new tn(this._tNode,this._rootLView)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),So=void 0,Io=["en",[["a","p"],["AM","PM"],So],[["AM","PM"],So,So],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],So,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],So,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",So,"{1} 'at' {0}",So],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ao={};function Oo(e){return e in Ao||(Ao[e]=ge.ng&&ge.ng.common&&ge.ng.common.locales&&ge.ng.common.locales[e]),Ao[e]}var Po=function(){var e={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,PluralCase:19,ExtraData:20};return e[e.LocaleId]="LocaleId",e[e.DayPeriodsFormat]="DayPeriodsFormat",e[e.DayPeriodsStandalone]="DayPeriodsStandalone",e[e.DaysFormat]="DaysFormat",e[e.DaysStandalone]="DaysStandalone",e[e.MonthsFormat]="MonthsFormat",e[e.MonthsStandalone]="MonthsStandalone",e[e.Eras]="Eras",e[e.FirstDayOfWeek]="FirstDayOfWeek",e[e.WeekendRange]="WeekendRange",e[e.DateFormat]="DateFormat",e[e.TimeFormat]="TimeFormat",e[e.DateTimeFormat]="DateTimeFormat",e[e.NumberSymbols]="NumberSymbols",e[e.NumberFormats]="NumberFormats",e[e.CurrencyCode]="CurrencyCode",e[e.CurrencySymbol]="CurrencySymbol",e[e.CurrencyName]="CurrencyName",e[e.Currencies]="Currencies",e[e.PluralCase]="PluralCase",e[e.ExtraData]="ExtraData",e}();function Do(e){var t;null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: ".concat("Expected localeId to be defined")+" [Expected=> null != ".concat(t," <=Actual]"))}(0,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}var Ro=new Map,No={provide:Xr,useClass:function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).ngModule=e,n}return _inherits(t,e),_createClass(t,[{key:"resolveComponentFactory",value:function(e){var t=$e(e);return new xo(t,this.ngModule)}}]),t}(Xr),deps:[Ve]},jo=function(e){function t(e,n){var r;_classCallCheck(this,t),(r=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this)))._parent=n,r._bootstrapComponents=[],r.injector=_assertThisInitialized(r),r.destroyCbs=[];var o=et(e),i=e[Ce]||null;return i&&Do(i),r._bootstrapComponents=zt(o.bootstrap),r._r3Injector=Pr(e,n,[{provide:Ve,useValue:_assertThisInitialized(r)},No],ue(e)),r.instance=r.get(e),r}return _inherits(t,e),_createClass(t,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fr.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:K.Default;return e===Fr||e===Ve||e===Se?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach((function(e){return e()})),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}},{key:"componentFactoryResolver",get:function(){return this.get(Xr)}}]),t}(Ve),Ho=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).moduleType=e,null!==et(e)&&function e(t){if(null!==t.\u0275mod.id){var n=t.\u0275mod.id;(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(ue(t)," vs ").concat(ue(t.name)))})(n,Ro.get(n),t),Ro.set(n,t)}var r=t.\u0275mod.imports;r instanceof Function&&(r=r()),r&&r.forEach((function(t){return e(t)}))}(e),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function(e){return new jo(this.moduleType,e)}}]),t}(function(){return function e(){_classCallCheck(this,e)}}()),Mo=function(e){function t(){var e,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return _classCallCheck(this,t),(e=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).__isAsync=n,e}return _inherits(t,e),_createClass(t,[{key:"emit",value:function(e){_get(_getPrototypeOf(t.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,n,r){var o,i=function(e){return null},s=function(){return null};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(e){setTimeout((function(){return n(e)}))}:function(e){n(e)}),r&&(s=this.__isAsync?function(){setTimeout((function(){return r()}))}:function(){r()}));var a=_get(_getPrototypeOf(t.prototype),"subscribe",this).call(this,o,i,s);return e instanceof h&&e.add(a),a}}]),t}(T),Fo=new Te("Application Initializer"),Vo=function(){var e=function(){function e(t){var n=this;_classCallCheck(this,e),this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((function(e,t){n.resolve=e,n.reject=t}))}return _createClass(e,[{key:"runInitializers",value:function(){var e=this;if(!this.initialized){var t=[],n=function(){e.done=!0,e.resolve()};if(this.appInits)for(var r=0;r0&&(o=setTimeout((function(){r._callbacks=r._callbacks.filter((function(e){return e.timeoutId!==o})),e(r._didWork,r.getPendingTasks())}),t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(si))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),yi=function(){var e=function(){function e(){_classCallCheck(this,e),this._applications=new Map,_i.addToWindow(this)}return _createClass(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return _i.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}(),_i=new(function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),gi=function(e,t,n){var r=new Ho(n);if(0===Vr.size)return Promise.resolve(r);var o,i,s=(o=e.get(ri,[]).concat(t).map((function(e){return e.providers})),i=[],o.forEach((function(e){return e&&i.push.apply(i,_toConsumableArray(e))})),i);if(0===s.length)return Promise.resolve(r);var a=function(){var e=ge.ng;if(!e||!e.\u0275compilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return e.\u0275compilerFacade}(),u=Fr.create({providers:s}).get(a.ResourceLoader);return function(e){var t=[],n=new Map;function r(e){var t=n.get(e);if(!t){var r=function(e){return Promise.resolve(u.get(e))}(e);n.set(e,t=r.then(zr))}return t}return Vr.forEach((function(e,n){var o=[];e.templateUrl&&o.push(r(e.templateUrl).then((function(t){e.template=t})));var i=e.styleUrls,s=e.styles||(e.styles=[]),a=e.styles.length;i&&i.forEach((function(t,n){s.push(""),o.push(r(t).then((function(r){s[a+n]=r,i.splice(i.indexOf(t),1),0==i.length&&(e.styleUrls=void 0)})))}));var u=Promise.all(o).then((function(){return function(e){Lr.delete(e)}(n)}));t.push(u)})),Vr=new Map,Promise.all(t).then((function(){}))}().then((function(){return r}))},mi=new Te("AllowMultipleToken");function ki(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r="Platform: ".concat(t),o=new Te(r);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=bi();if(!i||i.injector.get(mi,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var s=n.concat(t).concat({provide:o,useValue:!0},{provide:xr,useValue:"platform"});!function(e){if(di&&!di.destroyed&&!di.injector.get(mi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");di=e.get(wi);var t=e.get(Bo,null);t&&t.forEach((function(e){return e()}))}(Fr.create({providers:s,name:r}))}return function(e){var t=bi();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function bi(){return di&&!di.destroyed?di:null}var wi=function(){var e=function(){function e(t){_classCallCheck(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return _createClass(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,r,o=this,i=(n=t?t.ngZone:void 0,r=t&&t.ngZoneEventCoalescing||!1,"noop"===n?new vi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ln(),shouldCoalesceEventChangeDetection:r})),s=[{provide:si,useValue:i}];return i.run((function(){var t=Fr.create({providers:s,parent:o.injector,name:e.moduleType.name}),n=e.create(t),r=n.injector.get(sn,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy((function(){return Ti(o._modules,n)})),i.runOutsideAngular((function(){return i.onError.subscribe({next:function(e){r.handleError(e)}})})),function(e,t,r){try{var i=((s=n.injector.get(Vo)).runInitializers(),s.donePromise.then((function(){return Do(n.injector.get(Qo,"en-US")||"en-US"),o._moduleDoBootstrap(n),n})));return Jr(i)?i.catch((function(n){throw t.runOutsideAngular((function(){return e.handleError(n)})),n})):i}catch(a){throw t.runOutsideAngular((function(){return e.handleError(a)})),a}var s}(r,i)}))}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=Ci({},n);return gi(this.injector,r,e).then((function(e){return t.bootstrapModuleFactory(e,r)}))}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(xi);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach((function(e){return t.bootstrap(e)}));else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(ue(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach((function(e){return e.destroy()})),this._destroyListeners.forEach((function(e){return e()})),this._destroyed=!0}},{key:"injector",get:function(){return this._injector}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(je(Fr))},e.\u0275prov=$({token:e,factory:e.\u0275fac}),e}();function Ci(e,t){return Array.isArray(t)?t.reduce(Ci,e):Object.assign(Object.assign({},e),t)}var Ei,xi=((Ei=function(){function e(t,n,r,o,i,s){var a=this;_classCallCheck(this,e),this._zone=t,this._console=n,this._injector=r,this._exceptionHandler=o,this._componentFactoryResolver=i,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ln(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run((function(){a.tick()}))}});var u=new k((function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular((function(){e.next(a._stable),e.complete()}))})),l=new k((function(e){var t;a._zone.runOutsideAngular((function(){t=a._zone.onStable.subscribe((function(){si.assertNotInAngularZone(),ii((function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))}))}))}));var n=a._zone.onUnstable.subscribe((function(){si.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular((function(){e.next(!1)})))}));return function(){t.unsubscribe(),n.unsubscribe()}}));this.isStable=function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(o=t.pop())):"number"==typeof s&&(o=t.pop()),null===i&&1===t.length&&t[0]instanceof k?t[0]:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof n?function(o){return o.pipe(e((function(e,r){return(o=t(e,r),o instanceof k?o:new k(P(o))).pipe(function(e,t){return function(t){return t.lift(new R(e,void 0))}}((function(t,o){return n(e,t,r,o)})));var o}),r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new j(t,r))})}(M,e)}(o)(function(e,t){return t?function(e,t){return new k((function(n){var r=new h,o=0;return r.add(t.schedule((function(){o!==e.length?(n.next(e[o++]),n.closed||r.add(this.schedule())):n.complete()}))),r}))}(e,t):new k(A(e))}(t,i))}(u,l.pipe((function(e){return F()((t=U,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,Z);return r.source=e,r.subjectFactory=n,r})(e));var t})))}return _createClass(e,[{key:"bootstrap",value:function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Yr?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n.isBoundToModule?void 0:this._injector.get(Ve),i=n.create(Fr.NULL,[],t||n.selector,o);i.onDestroy((function(){r._unloadComponent(i)}));var s=i.injector.get(pi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ln()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t=!0,n=!1,r=void 0;try{for(var o,i=this._views[Symbol.iterator]();!(t=(o=i.next()).done);t=!0)o.value.detectChanges()}catch(f){n=!0,r=f}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}if(this._enforceNoNewChanges){var s=!0,a=!1,u=void 0;try{for(var l,c=this._views[Symbol.iterator]();!(s=(l=c.next()).done);s=!0)l.value.checkNoChanges()}catch(f){a=!0,u=f}finally{try{s||null==c.return||c.return()}finally{if(a)throw u}}}}catch(h){this._zone.runOutsideAngular((function(){return e._exceptionHandler.handleError(h)}))}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;Ti(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach((function(t){return t(e)}))}},{key:"_unloadComponent",value:function(e){this.detachView(e.hostView),Ti(this.components,e)}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach((function(e){return e.destroy()}))}},{key:"viewCount",get:function(){return this._views.length}}]),e}()).\u0275fac=function(e){return new(e||Ei)(je(si),je(qo),je(Fr),je(sn),je(Xr),je(Vo))},Ei.\u0275prov=$({token:Ei,factory:Ei.\u0275fac}),Ei);function Ti(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Si=ki(null,"core",[{provide:Uo,useValue:"unknown"},{provide:wi,deps:[Fr]},{provide:yi,deps:[]},{provide:qo,deps:[]}]),Ii=[{provide:xi,useClass:xi,deps:[si,qo,Fr,sn,Xr,Vo]},{provide:Eo,deps:[si],useFactory:function(e){var t=[];return e.onStable.subscribe((function(){for(;t.length;)t.pop()()})),function(e){t.push(e)}}},{provide:Vo,useClass:Vo,deps:[[new Q,Fo]]},{provide:ni,useClass:ni,deps:[]},zo,{provide:_o,useFactory:function(){return ko},deps:[]},{provide:go,useFactory:function(){return bo},deps:[]},{provide:Qo,useFactory:function(e){return Do(e=e||"undefined"!=typeof $localize&&$localize.locale||"en-US"),e},deps:[[new q(Qo),new Q,new J]]},{provide:Go,useValue:"USD"}],Ai=function(){var e=function e(t){_classCallCheck(this,e)};return e.\u0275mod=Ke({type:e}),e.\u0275inj=X({factory:function(t){return new(t||e)(je(xi))},providers:Ii}),e}(),Oi=null;function Pi(){return Oi}var Di,Ri,Ni,ji,Hi,Mi,Fi=new Te("DocumentToken"),Vi=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Li=function e(){_classCallCheck(this,e)},zi=((Ri=function(e){function t(e){var n;return _classCallCheck(this,t),(n=_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))).locale=e,n}return _inherits(t,e),_createClass(t,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Oo(t);if(n)return n;var r=t.split("-")[0];if(n=Oo(r))return n;if("en"===r)return Io;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Po.PluralCase]}(t||this.locale)(e)){case Vi.Zero:return"zero";case Vi.One:return"one";case Vi.Two:return"two";case Vi.Few:return"few";case Vi.Many:return"many";default:return"other"}}}]),t}(Li)).\u0275fac=function(e){return new(e||Ri)(je(Qo))},Ri.\u0275prov=$({token:Ri,factory:Ri.\u0275fac}),Ri),Zi=((Di=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:Di}),Di.\u0275inj=X({factory:function(e){return new(e||Di)},providers:[{provide:Li,useClass:zi}]}),Di),Bi=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"getProperty",value:function(e,t){return e[t]}},{key:"log",value:function(e){window.console&&window.console.log&&window.console.log(e)}},{key:"logGroup",value:function(e){window.console&&window.console.group&&window.console.group(e)}},{key:"logGroupEnd",value:function(){window.console&&window.console.groupEnd&&window.console.groupEnd()}},{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){return e.parentNode&&e.parentNode.removeChild(e),e}},{key:"getValue",value:function(e){return e.value}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getHistory",value:function(){return window.history}},{key:"getLocation",value:function(){return window.location}},{key:"getBaseHref",value:function(e){var t,n=Ui||(Ui=document.querySelector("base"))?Ui.getAttribute("href"):null;return null==n?null:(t=n,Ni||(Ni=document.createElement("a")),Ni.setAttribute("href",t),"/"===Ni.pathname.charAt(0)?Ni.pathname:"/"+Ni.pathname)}},{key:"resetBaseElement",value:function(){Ui=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"performanceNow",value:function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}},{key:"supportsCookies",value:function(){return!0}},{key:"getCookie",value:function(e){return function(e,t){t=encodeURIComponent(t);var n=!0,r=!1,o=void 0;try{for(var i,s=e.split(";")[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var a=i.value,u=a.indexOf("="),l=_slicedToArray(-1==u?[a,""]:[a.slice(0,u),a.slice(u+1)],2),c=l[0],f=l[1];if(c.trim()===t)return decodeURIComponent(f)}}catch(h){r=!0,o=h}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return null}(document.cookie,e)}}],[{key:"makeCurrent",value:function(){var e;e=new t,Oi||(Oi=e)}}]),t}(function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).call(this))}return _inherits(t,e),_createClass(t,[{key:"supportsDOMEvents",value:function(){return!0}}]),t}(function(){return function e(){_classCallCheck(this,e)}}())),Ui=null,Wi=new Te("TRANSITION_ID"),qi=[{provide:Fo,useFactory:function(e,t,n){return function(){n.get(Vo).donePromise.then((function(){var n=Pi();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter((function(t){return t.getAttribute("ng-transition")===e})).forEach((function(e){return n.remove(e)}))}))}},deps:[Wi,Fi,Fr],multi:!0}],Qi=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"addToWindow",value:function(e){ge.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},ge.getAllAngularTestabilities=function(){return e.getAllTestabilities()},ge.getAllAngularRootElements=function(){return e.getAllRootElements()},ge.frameworkStabilizers||(ge.frameworkStabilizers=[]),ge.frameworkStabilizers.push((function(e){var t=ge.getAllAngularTestabilities(),n=t.length,r=!1,o=function(t){r=r||t,0==--n&&e(r)};t.forEach((function(e){e.whenStable(o)}))}))}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var r=e.getTestability(t);return null!=r?r:n?Pi().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){var t;t=new e,_i=t}}]),e}(),Gi=new Te("EventManagerPlugins"),Ji=((ji=function(){function e(t,n){var r=this;_classCallCheck(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach((function(e){return e.manager=r})),this._plugins=t.slice().reverse()}return _createClass(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,r=0;r-1&&(n.splice(t,1),i+=e+".")})),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&vs.hasOwnProperty(t)&&(t=vs[t]))}return ds[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),hs.forEach((function(r){r!=n&&(0,ps[r])(e)&&(t+=r+".")})),t+=n}},{key:"eventCallback",value:function(e,n,r){return function(o){t.getEventFullKey(o)===e&&r.runGuarded((function(){return n(o)}))}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),t}(Ki)).\u0275fac=function(e){return new(e||is)(je(Fi))},is.\u0275prov=$({token:is,factory:is.\u0275fac}),is),_s=ki(Si,"browser",[{provide:Uo,useValue:"browser"},{provide:Bo,useValue:function(){Bi.makeCurrent(),Qi.init()},multi:!0},{provide:Fi,useFactory:function(){return function(e){Pt=e}(document),document},deps:[]}]),gs=[[],{provide:xr,useValue:"root"},{provide:sn,useFactory:function(){return new sn},deps:[]},{provide:Gi,useClass:fs,multi:!0,deps:[Fi,si,Uo]},{provide:Gi,useClass:ys,multi:!0,deps:[Fi]},[],{provide:as,useClass:as,deps:[Ji,$i,Lo]},{provide:no,useExisting:as},{provide:Yi,useExisting:$i},{provide:$i,useClass:$i,deps:[Fi]},{provide:pi,useClass:pi,deps:[si]},{provide:Ji,useClass:Ji,deps:[Gi,si]},[]],ms=((ss=function(){function e(t){if(_classCallCheck(this,e),t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return _createClass(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:Lo,useValue:t.appId},{provide:Wi,useExisting:Lo},qi]}}}]),e}()).\u0275mod=Ke({type:ss}),ss.\u0275inj=X({factory:function(e){return new(e||ss)(je(ss,12))},providers:gs,imports:[Zi,Ai]}),ss);"undefined"!=typeof window&&window;var ks,bs,ws,Cs,Es,xs,Ts,Ss=((Ts=function e(){_classCallCheck(this,e),this.title="example"}).\u0275fac=function(e){return new(e||Ts)},Ts.\u0275cmp=(Cs=(ws=(bs={type:Ts,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(e,t){1&e&&(function(e,t,n,r){var o=at(),i=ut(),s=19+e,a=o[11],u=o[s]=Dn(t,a,it.lFrame.currentNamespace),l=i.firstCreatePass?function(e,t,n,r,o,i,s){var a=t.consts,u=pn(a,i),l=Nn(t,n[6],e,3,o,u);return function(e,t,n,r){if(st()){var o=function(e,t,n){var r=e.directiveRegistry,o=null;if(r)for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:fn,r=t.localNames;if(null!==r)for(var o=t.index+1,i=0;i1&&void 0!==arguments[1]?arguments[1]:"",n=at(),r=ut(),o=e+19,i=r.firstCreatePass?Nn(r,n[6],e,3,null,null):r.data[o],s=n[o]=function(e,t){return Dt(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);yr(r,n,s,i),ct(i,!1)}(1," Hello, World\n"),function(){var e=lt();ft()?it.lFrame.isParent=!1:ct(e=e.parent,!1);var t=e;it.lFrame.elementDepthCount--;var n=ut();n.firstCreatePass&&(Et(n,e),rt(e)&&n.queries.elementEnd(e)),null!==t.classes&&function(e){return 0!=(16&e.flags)}(t)&&Gr(n,t,at(),t.classes,!0),null!==t.styles&&function(e){return 0!=(32&e.flags)}(t)&&Gr(n,t,at(),t.styles,!1)}())},styles:[""]}).type).prototype,(xs={type:ws,providersResolver:null,decls:bs.decls,vars:bs.vars,factory:null,template:bs.template||null,consts:bs.consts||null,ngContentSelectors:bs.ngContentSelectors,hostBindings:bs.hostBindings||null,hostVars:bs.hostVars||0,hostAttrs:bs.hostAttrs||null,contentQueries:bs.contentQueries||null,declaredInputs:Es={},inputs:null,outputs:null,exportAs:bs.exportAs||null,onChanges:null,onInit:Cs.ngOnInit||null,doCheck:Cs.ngDoCheck||null,afterContentInit:Cs.ngAfterContentInit||null,afterContentChecked:Cs.ngAfterContentChecked||null,afterViewInit:Cs.ngAfterViewInit||null,afterViewChecked:Cs.ngAfterViewChecked||null,onDestroy:Cs.ngOnDestroy||null,onPush:bs.changeDetection===ze.OnPush,directiveDefs:null,pipeDefs:null,selectors:bs.selectors||We,viewQuery:bs.viewQuery||null,features:bs.features||null,data:bs.data||{},encapsulation:bs.encapsulation||Ze.Emulated,id:"c",styles:bs.styles||We,_:null,setInput:null,schemas:bs.schemas||null,tView:null})._=Be((function(){var e=bs.directives,t=bs.features,n=bs.pipes;xs.id+=qe++,xs.inputs=Ye(bs.inputs,Es),xs.outputs=Ye(bs.outputs),t&&t.forEach((function(e){return e(xs)})),xs.directiveDefs=e?function(){return("function"==typeof e?e():e).map(Qe)}:null,xs.pipeDefs=n?function(){return("function"==typeof n?n():n).map(Ge)}:null})),xs),Ts),Is=((ks=function e(){_classCallCheck(this,e)}).\u0275mod=Ke({type:ks,bootstrap:[Ss]}),ks.\u0275inj=X({factory:function(e){return new(e||ks)},providers:[],imports:[[ms]]}),ks);(function(){if(un)throw new Error("Cannot enable prod mode after platform setup.");an=!1})(),_s().bootstrapModule(Is).catch((function(e){return console.error(e)}))},zn8P:function(e,t){function n(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: 21 - Using and Creating Modules/End of Chapter/example/dist/example/polyfills-es2015.ca64e4516afbb1b890d5.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{2:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const a=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class i{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=i.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(a)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,i,C),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,b),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),O=O.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(T,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,T,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new i(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,a){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=a,!o)throw new Error("callback is not defined");this.callback=o;const i=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,i,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,T)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:_,showUncaughtError:()=>!i[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:R,patchMethod:()=>R,bindArguments:()=>[],patchThen:()=>R,patchMacroTask:()=>R,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>R,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>R,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>R,wrapWithCurrentZone:()=>R,filterProperties:()=>[],attachOriginToPatched:()=>R,_redefineProperty:()=>R,patchCallbacks:()=>R};let O={parent:null,zone:new i(null,null)},j=null,I=0;function R(){}o("Zone","Zone"),e.Zone=i}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,a=[],i=s("Promise"),c=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;a.length;)for(;a.length;){const t=a.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){u(e)}}};const l=s("unhandledPromiseRejectionHandler");function u(e){n.onUnhandledError(e);try{const n=t[l];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function h(e){return e&&e.then}function p(e){return e}function f(e){return Z.reject(e)}const d=s("state"),g=s("value"),k=s("finally"),_=s("parentPromiseValue"),m=s("parentPromiseState");function y(e,t){return n=>{try{T(e,t,n)}catch(o){T(e,!1,o)}}}const v=s("currentTaskTrace");function T(e,o,s){const i=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(null===e[d]){let u=null;try{"object"!=typeof s&&"function"!=typeof s||(u=s&&s.then)}catch(l){return i(()=>{T(e,!1,l)})(),e}if(!1!==o&&s instanceof Z&&s.hasOwnProperty(d)&&s.hasOwnProperty(g)&&null!==s[d])E(s),T(e,s[d],s[g]);else if(!1!==o&&"function"==typeof u)try{u.call(s,i(y(e,o)),i(y(e,!1)))}catch(l){i(()=>{T(e,!1,l)})()}else{e[d]=o;const i=e[g];if(e[g]=s,e[k]===k&&!0===o&&(e[d]=e[m],e[g]=e[_]),!1===o&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,v,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&k===n[k];r&&(n[_]=o,n[m]=s);const i=t.run(a,void 0,r&&a!==f&&a!==p?[]:[o]);T(n,!0,i)}catch(o){T(n,!1,o)}},n)}class Z{constructor(e){const t=this;if(!(t instanceof Z))throw new Error("Must be an instanceof Promise.");t[d]=null,t[g]=[];try{e&&e(y(t,!0),y(t,!1))}catch(n){T(t,!1,n)}}static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return T(new this(null),!0,e)}static reject(e){return T(new this(null),!1,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let a of e)h(a)||(a=this.resolve(a)),a.then(r,s);return o}static all(e){return Z.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof Z?this:Z).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,a=0;const i=[];for(let l of e){h(l)||(l=this.resolve(l));const e=a;try{l.then(o=>{i[e]=t?t.thenCallback(o):o,s--,0===s&&n(i)},r=>{t?(i[e]=t.errorCallback(r),s--,0===s&&n(i)):o(r)})}catch(c){o(c)}s++,a++}return s-=2,0===s&&n(i),r}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return null==this[d]?this[g].push(r,o,e,n):w(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[k]=k;const o=t.current;return null==this[d]?this[g].push(o,n,e,e):w(this,o,n,e,e),n}}Z.resolve=Z.resolve,Z.reject=Z.reject,Z.race=Z.race,Z.all=Z.all;const S=e[i]=e.Promise,D=t.__symbol__("ZoneAwarePromise");let P=o(e,"Promise");P&&!P.configurable||(P&&delete P.writable,P&&delete P.value,P||(P={configurable:!0,enumerable:!0}),P.get=function(){return e[D]?e[D]:e[i]},P.set=function(t){t===Z?e[D]=t:(e[i]=t,t.prototype[c]||C(t),n.setNativePromise(t))},r(e,"Promise",P)),e.Promise=Z;const z=s("thenPatched");function C(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new Z((e,t)=>{r.call(this,e,t)}).then(e,t)},e[z]=!0}if(n.patchThen=C,S){C(S);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(O=t,function(){let e=O.apply(this,arguments);if(e instanceof Z)return e;let t=e.constructor;return t[z]||C(t),e}))}var O;return Promise[t.__symbol__("uncaughtPromiseErrors")]=a,Z});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),i=Zone.__symbol__("");function c(e,t){return Zone.current.wrap(e,t)}function l(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const u=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function g(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),y=!m&&!_&&!(!h||!p.HTMLElement),v=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(!(e=e||f.event))return;let t=T[e.type];t||(t=T[e.type]=u("ON_PROPERTY"+e.type));const n=this||e.target||f,o=n[t];let r;if(y&&n===p&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function E(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const a=u("on"+o+"patched");if(n.hasOwnProperty(a)&&n[a])return;delete s.writable,delete s.value;const i=s.get,c=s.set,l=o.substr(2);let h=T[l];h||(h=T[l]=u("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(l,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(l,b,!1)):t[h]=null)},s.get=function(){let e=this;if(e||n!==f||(e=f),!e)return null;const t=e[h];if(t)return t;if(i){let t=i&&i.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[a]=!0}function w(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?l(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function z(e,t){e[u("OriginalDelegate")]=t}let C=!1,O=!1;function j(){try{const e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function I(){if(C)return O;C=!0;try{const e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(O=!0)}catch(e){}return O}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=u("OriginalDelegate"),o=u("Promise"),r=u("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});let R=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ae){R=!1}const N={useG:!0},x={},L={},M=new RegExp("^"+i+"(\\w+)(true|false)$"),A=u("propagationStopped");function H(e,t,o){const r=o&&o.add||"addEventListener",s=o&&o.rm||"removeEventListener",a=o&&o.listeners||"eventListeners",c=o&&o.rmAll||"removeAllListeners",l=u(r),h="."+r+":",p=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},f=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[x[t.type].false];if(o)if(1===o.length)p(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[A]=!0,e&&e.apply(t,n)})}function q(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const a=t[s]=t[o];t[o]=function(s,i,c){return i&&i.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=i.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(i.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),a.call(t,s,i,c)},e.attachOriginToPatched(t[o],a)}const B=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],W=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],U=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],V=["bounce","finish","start"],X=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],Y=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],J=["close","error","open","message"],K=["error","message"],Q=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],B,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ee(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function te(e,t,n,o){e&&w(e,ee(e,t,n),o)}function ne(e,t){if(m&&!v)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(y){const e=window,t=j?[{target:e,ignoreProperties:["error"]}]:[];te(e,Q.concat(["messageerror"]),r?r.concat(t):r,n(e)),te(Document.prototype,Q,r),void 0!==e.SVGElement&&te(e.SVGElement.prototype,Q,r),te(Element.prototype,Q,r),te(HTMLElement.prototype,Q,r),te(HTMLMediaElement.prototype,W,r),te(HTMLFrameSetElement.prototype,B.concat($),r),te(HTMLBodyElement.prototype,B.concat($),r),te(HTMLFrameElement.prototype,U,r),te(HTMLIFrameElement.prototype,U,r);const o=e.HTMLMarqueeElement;o&&te(o.prototype,V,r);const s=e.Worker;s&&te(s.prototype,K,r)}const s=t.XMLHttpRequest;s&&te(s.prototype,X,r);const a=t.XMLHttpRequestEventTarget;a&&te(a&&a.prototype,X,r),"undefined"!=typeof IDBIndex&&(te(IDBIndex.prototype,Y,r),te(IDBRequest.prototype,Y,r),te(IDBOpenDBRequest.prototype,Y,r),te(IDBDatabase.prototype,Y,r),te(IDBTransaction.prototype,Y,r),te(IDBCursor.prototype,Y,r)),o&&te(WebSocket.prototype,J,r)}Zone.__load_patch("util",(n,s,a)=>{a.patchOnProperties=w,a.patchMethod=D,a.bindArguments=g,a.patchMacroTask=P;const l=s.__symbol__("BLACK_LISTED_EVENTS"),u=s.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[l]=n[u]),n[l]&&(s[l]=s[u]=n[l]),a.patchEventPrototype=G,a.patchEventTarget=H,a.isIEOrEdge=I,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=o,a.ArraySlice=r,a.patchClass=S,a.wrapWithCurrentZone=c,a.filterProperties=ee,a.attachOriginToPatched=z,a._redefineProperty=Object.defineProperty,a.patchCallbacks=q,a.getGlobalObjects=()=>({globalSources:L,zoneSymbolEventNames:x,eventNames:Q,isBrowser:y,isMix:v,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:i,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"})});const oe=u("zoneTask");function re(e,t,n,o){let r=null,s=null;n+=o;const a={};function i(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[oe]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=D(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=l(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},i,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?a[n]=e:n&&(n[oe]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=D(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=a[r]:(s=r&&r[oe],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete a[r]:r&&(r[oe]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function se(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:a}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{re(e,"set","clear","Timeout"),re(e,"set","clear","Interval"),re(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{re(e,"request","cancel","AnimationFrame"),re(e,"mozRequest","mozCancel","AnimationFrame"),re(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),se(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),S("MutationObserver"),S("WebKitMutationObserver"),S("IntersectionObserver"),S("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ne(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const p=e.XMLHttpRequest;if(!p)return;const f=p.prototype;let d=f[s],g=f[a];if(!d){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;d=e[s],g=e[a]}}function k(e){const o=e.data,c=o.target;c[i]=!1,c[h]=!1;const l=c[r];d||(d=c[s],g=c[a]),l&&g.call(c,"readystatechange",l);const u=c[r]=()=>{if(c.readyState===c.DONE)if(!o.aborted&&c[i]&&"scheduled"===e.state){const n=c[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=c[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[c]=t[1],y.apply(e,t)}),v=u("fetchTaskAborting"),T=u("fetchTaskScheduling"),b=D(f,"send",()=>function(e,n){if(!0===t.current[T])return b.apply(e,n);if(e[o])return b.apply(e,n);{const t={target:e,url:e[c],isPeriodic:!1,args:n,aborted:!1},o=l("XMLHttpRequest.send",_,t,k,m);e&&!0===e[h]&&!t.aborted&&"scheduled"===o.state&&o.invoke()}}),E=D(f,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[v])return E.apply(e,o)})}(e);const n=u("xhrTask"),o=u("xhrSync"),r=u("xhrListener"),i=u("xhrScheduled"),c=u("xhrURL"),h=u("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,g(arguments,o+"."+s))};return z(t,e),t})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){F(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[u("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[u("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[2,0]]]); ================================================ FILE: 21 - Using and Creating Modules/End of Chapter/example/dist/example/polyfills-es5.277e2e1d6fb2daf91a5c.js ================================================ function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var n=0;n")})),f="$0"==="a".replace(/./,"$0"),l=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,p){var h=i(t),v=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),d=v&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!v||!d||"replace"===t&&(!s||!f)||"split"===t&&!l){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?v&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:f}),b=y[1];r(String.prototype,t,y[0]),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&c(RegExp.prototype[h],"sham",!0)}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ"),c=function(t){return function(e,n,c,u){r(n);var s=o(e),f=i(s),l=a(s.length),p=t?l-1:0,h=t?-1:1;if(c<2)for(;;){if(p in f){u=f[p],p+=h;break}if(p+=h,t?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:l>p;p+=h)p in f&&(u=n(u,f[p],p,s));return u}};t.exports={left:c(!1),right:c(!0)}},"2A+d":function(t,e,n){var r=n("I+eb"),o=n("/GqU"),i=n("UMSQ");r({target:"String",stat:!0},{raw:function(t){for(var e=o(t.raw),n=i(e.length),r=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c1?arguments[1]:void 0)}})},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"33Wh":function(t,e,n){var r=n("yoRg"),o=n("eDl+");t.exports=Object.keys||function(t){return r(t,o)}},"3I1R":function(t,e,n){n("dG/n")("hasInstance")},"3KgV":function(t,e,n){var r=n("I+eb"),o=n("uy83"),i=n("0Dky"),a=n("hh1v"),c=n("8YOa").onFreeze,u=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){u(1)})),sham:!o},{freeze:function(t){return u&&a(t)?u(c(t)):t}})},"3bBZ":function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("4mDm"),a=n("kRJp"),c=n("tiKp"),u=c("iterator"),s=c("toStringTag"),f=i.values;for(var l in o){var p=r[l],h=p&&p.prototype;if(h){if(h[u]!==f)try{a(h,u,f)}catch(d){h[u]=f}if(h[s]||a(h,s,l),o[l])for(var v in i)if(h[v]!==i[v])try{a(h,v,i[v])}catch(d){h[v]=i[v]}}}},"4Brf":function(t,e,n){"use strict";var r=n("I+eb"),o=n("g6v/"),i=n("2oRo"),a=n("UTVS"),c=n("hh1v"),u=n("m/L8").f,s=n("6JNq"),f=i.Symbol;if(o&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},p=function t(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),n=this instanceof t?new f(e):void 0===e?f():f(e);return""===e&&(l[n]=!0),n};s(p,f);var h=p.prototype=f.prototype;h.constructor=p;var v=h.toString,d="Symbol(test)"==String(f("test")),g=/^Symbol\((.*)\)[^)]+$/;u(h,"description",{configurable:!0,get:function(){var t=c(this)?this.valueOf():this,e=v.call(t);if(a(l,t))return"";var n=d?e.slice(7,-1):e.replace(g,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:p})}},"4HCi":function(t,e,n){var r=n("0Dky"),o=n("WJkJ");t.exports=function(t){return r((function(){return!!o[t]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[t]()||o[t].name!==t}))}},"4WOD":function(t,e,n){var r=n("UTVS"),o=n("ewvW"),i=n("93I0"),a=n("4Xet"),c=i("IE_PROTO"),u=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,c)?t[c]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},"4Xet":function(t,e,n){var r=n("0Dky");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4h0Y":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isFrozen:function(t){return!i(t)||!!a&&a(t)}})},"4l63":function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({global:!0,forced:parseInt!=o},{parseInt:o})},"4mDm":function(t,e,n){"use strict";var r=n("/GqU"),o=n("RNIs"),i=n("P4y1"),a=n("afO8"),c=n("fdAy"),u=a.set,s=a.getterFor("Array Iterator");t.exports=c(Array,"Array",(function(t,e){u(this,{type:"Array Iterator",target:r(t),index:0,kind:e})}),(function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("hh1v"),a=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){a(1)}))},{isSealed:function(t){return!i(t)||!!a&&a(t)}})},"5DmW":function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("/GqU"),a=n("Bs8V").f,c=n("g6v/"),u=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!c||u,sham:!c},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseInt,c=/^[+-]?0[Xx]/,u=8!==a(i+"08")||22!==a(i+"0x16");t.exports=u?function(t,e){var n=o(String(t));return a(n,e>>>0||(c.test(n)?16:10))}:a},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=n("swFL"),c=Math.min,u=[].lastIndexOf,s=!!u&&1/[1].lastIndexOf(1,-0)<0,f=a("lastIndexOf");t.exports=s||f?function(t){if(s)return u.apply(this,arguments)||0;var e=r(this),n=i(e.length),a=n-1;for(arguments.length>1&&(a=c(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:u},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a,c=n("I+eb"),u=n("xDBR"),s=n("2oRo"),f=n("0GbY"),l=n("/qmn"),p=n("busE"),h=n("4syw"),v=n("1E5z"),d=n("JiZb"),g=n("hh1v"),y=n("HAuM"),b=n("GarU"),m=n("xrYK"),k=n("iSVu"),x=n("ImZN"),E=n("HH4o"),w=n("SEBh"),S=n("LPSS").set,_=n("tXUg"),T=n("zfnd"),O=n("RN6c"),I=n("8GlL"),M=n("5mdu"),D=n("afO8"),j=n("lMq5"),R=n("tiKp"),P=n("YK6W"),N=R("species"),A="Promise",L=D.get,C=D.set,F=D.getterFor(A),Z=l,z=s.TypeError,W=s.document,G=s.process,U=f("fetch"),H=I.f,B=H,K="process"==m(G),V=!!(W&&W.createEvent&&s.dispatchEvent),Y=j(A,(function(){if(k(Z)===String(Z)){if(66===P)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(u&&!Z.prototype.finally)return!0;if(P>=51&&/native code/.test(Z))return!1;var t=Z.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[N]=e,!(t.then((function(){}))instanceof e)})),q=Y||!E((function(t){Z.all(t).catch((function(){}))})),X=function(t){var e;return!(!g(t)||"function"!=typeof(e=t.then))&&e},J=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;_((function(){for(var o=e.value,i=1==e.state,a=0;r.length>a;){var c,u,s,f=r[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,v=f.domain;try{l?(i||(2===e.rejection&&et(t,e),e.rejection=1),!0===l?c=o:(v&&v.enter(),c=l(o),v&&(v.exit(),s=!0)),c===f.promise?h(z("Promise-chain cycle")):(u=X(c))?u.call(c,p,h):p(c)):h(o)}catch(d){v&&!s&&v.exit(),h(d)}}e.reactions=[],e.notified=!1,n&&!e.rejection&&$(t,e)}))}},Q=function(t,e,n){var r,o;V?((r=W.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),s.dispatchEvent(r)):r={promise:e,reason:n},(o=s["on"+t])?o(r):"unhandledrejection"===t&&O("Unhandled promise rejection",n)},$=function(t,e){S.call(s,(function(){var n,r=e.value;if(tt(e)&&(n=M((function(){K?G.emit("unhandledRejection",r,t):Q("unhandledrejection",t,r)})),e.rejection=K||tt(e)?2:1,n.error))throw n.value}))},tt=function(t){return 1!==t.rejection&&!t.parent},et=function(t,e){S.call(s,(function(){K?G.emit("rejectionHandled",t):Q("rejectionhandled",t,e.value)}))},nt=function(t,e,n,r){return function(o){t(e,n,o,r)}},rt=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,J(t,e,!0))},ot=function t(e,n,r,o){if(!n.done){n.done=!0,o&&(n=o);try{if(e===r)throw z("Promise can't be resolved itself");var i=X(r);i?_((function(){var o={done:!1};try{i.call(r,nt(t,e,o,n),nt(rt,e,o,n))}catch(a){rt(e,o,a,n)}})):(n.value=r,n.state=1,J(e,n,!1))}catch(a){rt(e,{done:!1},a,n)}}};Y&&(Z=function(t){b(this,Z,A),y(t),r.call(this);var e=L(this);try{t(nt(ot,this,e),nt(rt,this,e))}catch(n){rt(this,e,n)}},(r=function(t){C(this,{type:A,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=h(Z.prototype,{then:function(t,e){var n=F(this),r=H(w(this,Z));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=K?G.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&J(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=L(t);this.promise=t,this.resolve=nt(ot,t,e),this.reject=nt(rt,t,e)},I.f=H=function(t){return t===Z||t===i?new o(t):B(t)},u||"function"!=typeof l||(a=l.prototype.then,p(l.prototype,"then",(function(t,e){var n=this;return new Z((function(t,e){a.call(n,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof U&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return T(Z,U.apply(s,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:Z}),v(Z,A,!1,!0),d(A),i=f(A),c({target:A,stat:!0,forced:Y},{reject:function(t){var e=H(this);return e.reject.call(void 0,t),e.promise}}),c({target:A,stat:!0,forced:u||Y},{resolve:function(t){return T(u&&this===i?Z:this,t)}}),c({target:A,stat:!0,forced:q},{all:function(t){var e=this,n=H(e),r=n.resolve,o=n.reject,i=M((function(){var n=y(e.resolve),i=[],a=0,c=1;x(t,(function(t){var u=a++,s=!1;i.push(void 0),c++,n.call(e,t).then((function(t){s||(s=!0,i[u]=t,--c||r(i))}),o)})),--c||r(i)}));return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=H(e),r=n.reject,o=M((function(){var o=y(e.resolve);x(t,(function(t){o.call(e,t).then(n.resolve,r)}))}));return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3}))}},"7+kd":function(t,e,n){n("dG/n")("isConcatSpreadable")},"7+zs":function(t,e,n){var r=n("kRJp"),o=n("UesL"),i=n("tiKp")("toPrimitive"),a=Date.prototype;i in a||r(a,i,o)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L");var r=n("Qo9l");t.exports=r.Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("0BK2"),o=n("hh1v"),i=n("UTVS"),a=n("m/L8").f,c=n("kOOl"),u=n("uy83"),s=c("meta"),f=0,l=Object.isExtensible||function(){return!0},p=function(t){a(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!e)return"E";p(t)}return t[s].objectID},getWeakData:function(t,e){if(!i(t,s)){if(!l(t))return!0;if(!e)return!1;p(t)}return t[s].weakData},onFreeze:function(t){return u&&h.REQUIRED&&l(t)&&!i(t,s)&&p(t),t}};r[s]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT"),o=n("kOOl"),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("wE6v");r({target:"Date",proto:!0,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").right;r({target:"Array",proto:!0,forced:n("swFL")("reduceRight")},{reduceRight:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("I+eb"),o=n("ZUd8").codeAt;r({target:"String",proto:!0},{codePointAt:function(t){return o(this,t)}})},"9d/t":function(t,e,n){var r=n("AO7/"),o=n("xrYK"),i=n("tiKp")("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I+eb"),o=n("I8vh"),i=String.fromCharCode,a=String.fromCodePoint;r({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],r=arguments.length,a=0;r>a;){if(e=+arguments[a++],o(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?i(e):i(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},"AO7/":function(t,e,n){var r={};r[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(r)},AmFO:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("jrUv"),a=Math.abs,c=Math.exp,u=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(t){return a(t=+t)<1?(i(t)-i(-t))/2:(c(t-1)-c(-t-1))*(u/2)}})},BNMt:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("blink")},{blink:function(){return o(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={},c=function(t,e,n){if(!(e in a)){for(var r=[],o=0;ou&&(s=s.slice(0,u)),t?f+s:s+f)}};t.exports={start:c(!1),end:c(!0)}},DPsx:function(t,e,n){var r=n("g6v/"),o=n("0Dky"),i=n("zBJ4");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DQNa:function(t,e,n){var r=n("busE"),o=Date.prototype,i=o.toString,a=o.getTime;new Date(NaN)+""!="Invalid Date"&&r(o,"toString",(function(){var t=a.call(this);return t==t?i.call(this):"Invalid Date"}))},E5NM:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("big")},{big:function(){return o(this,"big","","")}})},E9XD:function(t,e,n){"use strict";var r=n("I+eb"),o=n("1Y/n").left;r({target:"Array",proto:!0,forced:n("swFL")("reduce")},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},ENF9:function(t,e,n){"use strict";var r,o=n("2oRo"),i=n("4syw"),a=n("8YOa"),c=n("bWFh"),u=n("rKzb"),s=n("hh1v"),f=n("afO8").enforce,l=n("f5p1"),p=!o.ActiveXObject&&"ActiveXObject"in o,h=Object.isExtensible,v=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},d=t.exports=c("WeakMap",v,u);if(l&&p){r=u.getConstructor(v,"WeakMap",!0),a.REQUIRED=!0;var g=d.prototype,y=g.delete,b=g.has,m=g.get,k=g.set;i(g,{delete:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.delete(t)}return y.call(this,t)},has:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)||e.frozen.has(t)}return b.call(this,t)},get:function(t){if(s(t)&&!h(t)){var e=f(this);return e.frozen||(e.frozen=new r),b.call(this,t)?m.call(this,t):e.frozen.get(t)}return m.call(this,t)},set:function(t,e){if(s(t)&&!h(t)){var n=f(this);n.frozen||(n.frozen=new r),b.call(this,t)?k.call(this,t,e):n.frozen.set(t,e)}else k.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("14Sl"),o=n("ROdP"),i=n("glrk"),a=n("HYAF"),c=n("SEBh"),u=n("iqWW"),s=n("UMSQ"),f=n("FMNM"),l=n("kmMV"),p=n("0Dky"),h=[].push,v=Math.min,d=!p((function(){return!RegExp(4294967295,"y")}));r("split",2,(function(t,e,n){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var r=String(a(this)),i=void 0===n?4294967295:n>>>0;if(0===i)return[];if(void 0===t)return[r];if(!o(t))return e.call(r,t,i);for(var c,u,s,f=[],p=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=l.call(v,r))&&!((u=v.lastIndex)>p&&(f.push(r.slice(p,c.index)),c.length>1&&c.index=i));)v.lastIndex===c.index&&v.lastIndex++;return p===r.length?!s&&v.test("")||f.push(""):f.push(r.slice(p)),f.length>i?f.slice(0,i):f}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,n):r.call(String(o),e,n)},function(t,o){var a=n(r,t,this,o,r!==e);if(a.done)return a.value;var l=i(t),p=String(this),h=c(l,RegExp),g=l.unicode,y=new h(d?l:"^(?:"+l.source+")",(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(d?"y":"g")),b=void 0===o?4294967295:o>>>0;if(0===b)return[];if(0===p.length)return null===f(y,p)?[p]:[];for(var m=0,k=0,x=[];k1?arguments[1]:void 0)}:[].forEach},FF6l:function(t,e,n){"use strict";var r=n("ewvW"),o=n("I8vh"),i=n("UMSQ"),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=r(this),c=i(n.length),u=o(t,c),s=o(e,c),f=arguments.length>2?arguments[2]:void 0,l=a((void 0===f?c:o(f,c))-s,c-u),p=1;for(s0;)s in n?n[u]=n[s]:delete n[u],u+=p,s+=p;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},FZtP:function(t,e,n){var r=n("2oRo"),o=n("/byt"),i=n("F8JR"),a=n("kRJp");for(var c in o){var u=r[c],s=u&&u.prototype;if(s&&s.forEach!==i)try{a(s,"forEach",i)}catch(f){s.forEach=i}}},"G+Rx":function(t,e,n){var r=n("0GbY");t.exports=r("document","documentElement")},GKVU:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("anchor")},{anchor:function(t){return o(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("fontsize")},{fontsize:function(t){return o(this,"font","size",t)}})},GXvd:function(t,e,n){n("dG/n")("species")},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},H0pb:function(t,e,n){n("ma9I"),n("07d7"),n("pNMO"),n("tjZM"),n("4Brf"),n("3I1R"),n("7+kd"),n("0oug"),n("KhsS"),n("jt2F"),n("gOCb"),n("a57n"),n("GXvd"),n("I1Gw"),n("gXIK"),n("lEou"),n("gbiT"),n("I9xj"),n("DEfu");var r=n("Qo9l");t.exports=r.Symbol},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp"),i=n("YK6W"),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HsHA:function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("kRJp"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I1Gw:function(t,e,n){n("dG/n")("split")},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y,b,m=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((g=f?m(r(b=t[v])[0],b[1]):m(t[v]))&&g instanceof s)return g;return new s(!1)}p=h.call(t)}for(y=p.next;!(b=y.call(p)).done;)if("object"==typeof(g=u(p,m,b.value,f))&&g&&g instanceof s)return g;return new s(!1)}).stop=function(t){return new s(!0,t)}},IxXR:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("strike")},{strike:function(){return o(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WjRb"),i=n("HYAF");r({target:"String",proto:!0,forced:!n("qxPZ")("includes")},{includes:function(t){return!!~String(i(this)).indexOf(o(t),arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("I+eb"),o=n("5YOQ");r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},JfAA:function(t,e,n){"use strict";var r=n("busE"),o=n("glrk"),i=n("0Dky"),a=n("rW0t"),c=RegExp.prototype,u=c.toString;(i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))||"toString"!=u.name)&&r(RegExp.prototype,"toString",(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in c)?a.call(t):n)}),{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("tiKp"),a=n("g6v/"),c=i("species");t.exports=function(t){var e=r(t);a&&e&&!e[c]&&(0,o.f)(e,c,{configurable:!0,get:function(){return this}})}},KhsS:function(t,e,n){n("dG/n")("match")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r,o=n("I+eb"),i=n("Bs8V").f,a=n("UMSQ"),c=n("WjRb"),u=n("HYAF"),s=n("qxPZ"),f=n("xDBR"),l="".startsWith,p=Math.min,h=s("startsWith");o({target:"String",proto:!0,forced:!(!f&&!h&&(r=i(String.prototype,"startsWith"),r&&!r.writable)||h)},{startsWith:function(t){var e=String(u(this));c(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),r=String(t);return l?l.call(e,r,n):e.slice(n,n+r.length)===r}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("0Dky"),u=n("xrYK"),s=n("+MLx"),f=n("G+Rx"),l=n("zBJ4"),p=n("tinx"),h=a.location,v=a.setImmediate,d=a.clearImmediate,g=a.process,y=a.MessageChannel,b=a.Dispatch,m=0,k={},x=function(t){if(k.hasOwnProperty(t)){var e=k[t];delete k[t],e()}},E=function(t){return function(){x(t)}},w=function(t){x(t.data)},S=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};v&&d||(v=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return k[++m]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(m),m},d=function(t){delete k[t]},"process"==u(g)?r=function(t){g.nextTick(E(t))}:b&&b.now?r=function(t){b.now(E(t))}:y&&!p?(i=(o=new y).port2,o.port1.onmessage=w,r=s(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(S)?r="onreadystatechange"in l("script")?function(t){f.appendChild(l("script")).onreadystatechange=function(){f.removeChild(this),x(t)}}:function(t){setTimeout(E(t),0)}:(r=S,a.addEventListener("message",w,!1))),t.exports={set:v,clear:d}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NBAS:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("ewvW"),a=n("4WOD"),c=n("4Xet");r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!c},{getPrototypeOf:function(t){return a(i(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},O741:function(t,e,n){var r=n("hh1v");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("ZUd8").charAt,o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",(function(t){a(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},PqOI:function(t,e,n){var r=n("I+eb"),o=n("90hW"),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(t){return o(t=+t)*a(i(t),1/3)}})},QFcT:function(t,e,n){var r=n("I+eb"),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,forced:!!o&&o(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,r,o=0,c=0,u=arguments.length,s=0;c0?(r=n/s)*r:n;return s===1/0?1/0:s*a(o)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=n("I+eb"),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-o(i(t+.5)*a):32}})},QWBl:function(t,e,n){"use strict";var r=n("I+eb"),o=n("F8JR");r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},Qo9l:function(t,e,n){var r=n("2oRo");t.exports=r},R0gw:function(t,e,n){var r,o;void 0===(o="function"==typeof(r=function(){"use strict";var t,e,n,r,o,i;function a(){t=Zone.__symbol__,e=Object[t("defineProperty")]=Object.defineProperty,n=Object[t("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,r=Object.create,o=t("unconfigurables"),Object.defineProperty=function(t,e,n){if(u(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=s(t,e,n)),f(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]=s(t,n,e[n])})),r(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var r=n(t,e);return r&&u(t,e)&&(r.configurable=!1),r}}function c(t,e,n){var r=n.configurable;return f(t,e,n=s(t,e,n),r)}function u(t,e){return t&&t[o]&&t[o][e]}function s(t,n,r){return Object.isFrozen(r)||(r.configurable=!0),r.configurable||(t[o]||Object.isFrozen(t)||e(t,o,{writable:!0,value:{}}),t[o]&&(t[o][n]=!0)),r}function f(t,n,r,o){try{return e(t,n,r)}catch(a){if(!r.configurable)throw a;void 0===o?delete r.configurable:r.configurable=o;try{return e(t,n,r)}catch(a){var i=null;try{i=JSON.stringify(r)}catch(a){i=r.toString()}console.log("Attempting to configure '"+n+"' with descriptor '"+i+"' on object '"+t+"' and got error, giving up: "+a)}}}function l(t,e){var n=e.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,c=n.FALSE_STR,u=n.ZONE_SYMBOL_PREFIX,s="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(","),f=[],l=t.wtf,p="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".split(",");l?f=p.map((function(t){return"HTML"+t+"Element"})).concat(s):t.EventTarget?f.push("EventTarget"):f=s;for(var h=t.__Zone_disable_IE_check||!1,v=t.__Zone_enable_cross_context_check||!1,d=e.isIEOrEdge(),g="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",y={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},b=0;b1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach((function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}}))):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{})[(i.__Zone_symbol_prefix||"__zone_symbol__")+"legacyPatch"]=function(){var t=i.Zone;t.__load_patch("defineProperty",(function(t,e,n){n._redefineProperty=c,a()})),t.__load_patch("registerElement",(function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)})),t.__load_patch("EventTargetLegacy",(function(t,e,n){l(t,n),p(n,t)}))}})?r.call(e,n,e,t):r)||(t.exports=o)},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp"),o=n("fHMY"),i=n("m/L8"),a=r("unscopables"),c=Array.prototype;null==c[a]&&i.f(c,a,{configurable:!0,value:o(null)}),t.exports=function(t){c[a][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").some;r({target:"Array",proto:!0,forced:n("swFL")("some")},{some:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},Rm1S:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("UMSQ"),a=n("HYAF"),c=n("iqWW"),u=n("FMNM");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),s=String(this);if(!a.global)return u(a,s);var f=a.unicode;a.lastIndex=0;for(var l,p=[],h=0;null!==(l=u(a,s));){var v=String(l[0]);p[h]=v,""===v&&(a.lastIndex=c(s,i(a.lastIndex),f)),h++}return 0===h?null:p}]}))},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){var r=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},SYor:function(t,e,n){"use strict";var r=n("I+eb"),o=n("WKiH").trim;r({target:"String",proto:!0,forced:n("4HCi")("trim")},{trim:function(){return o(this)}})},TFPT:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sub")},{sub:function(){return o(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("2oRo"),i=n("lMq5"),a=n("cVYH"),c=n("m/L8").f,u=n("JBy8").f,s=n("ROdP"),f=n("rW0t"),l=n("n3/R"),p=n("busE"),h=n("0Dky"),v=n("afO8").set,d=n("JiZb"),g=n("tiKp")("match"),y=o.RegExp,b=y.prototype,m=/a/g,k=/a/g,x=new y(m)!==m,E=l.UNSUPPORTED_Y;if(r&&i("RegExp",!x||E||h((function(){return k[g]=!1,y(m)!=m||y(k)==k||"/a/i"!=y(m,"i")})))){for(var w=function t(e,n){var r,o=this instanceof t,i=s(e),c=void 0===n;if(!o&&i&&e.constructor===t&&c)return e;x?i&&!c&&(e=e.source):e instanceof t&&(c&&(n=f.call(e)),e=e.source),E&&(r=!!n&&n.indexOf("y")>-1)&&(n=n.replace(/y/g,""));var u=a(x?new y(e,n):y(e,n),o?this:b,t);return E&&r&&v(u,{sticky:r}),u},S=function(t){t in w||c(w,t,{configurable:!0,get:function(){return y[t]},set:function(e){y[t]=e}})},_=u(y),T=0;_.length>T;)S(_[T++]);b.constructor=w,w.prototype=b,p(o,"RegExp",w)}d("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh"),a=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},TeQF:function(t,e,n){"use strict";var r=n("I+eb"),o=n("tycR").filter,i=n("0Dky"),a=n("Hd5f")("filter"),c=a&&!i((function(){[].filter.call({length:-1,0:1},(function(t){throw t}))}));r({target:"Array",proto:!0,forced:!a||!c},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p,h=o(t),v="function"==typeof this?this:Array,d=arguments.length,g=d>1?arguments[1]:void 0,y=void 0!==g,b=0,m=s(h);if(y&&(g=r(g,d>2?arguments[2]:void 0,2)),null==m||v==Array&&a(m))for(n=new v(e=c(h.length));e>b;b++)u(n,b,y?g(h[b],b):h[b]);else for(p=(l=m.call(h)).next,n=new v;!(f=p.call(l)).done;b++)u(n,b,y?i(l,g,[f.value,b],!0):f.value);return n.length=b,n}},ToJy:function(t,e,n){"use strict";var r=n("I+eb"),o=n("HAuM"),i=n("ewvW"),a=n("0Dky"),c=n("swFL"),u=[],s=u.sort,f=a((function(){u.sort(void 0)})),l=a((function(){u.sort(null)})),p=c("sort");r({target:"Array",proto:!0,forced:f||!l||p},{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),o(t))}})},Tskq:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},U3f4:function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("rW0t"),a=n("n3/R").UNSUPPORTED_Y;r&&("g"!=/./g.flags||a)&&o.f(RegExp.prototype,"flags",{configurable:!0,get:i})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("14Sl"),o=n("glrk"),i=n("ewvW"),a=n("UMSQ"),c=n("ppGB"),u=n("HYAF"),s=n("iqWW"),f=n("FMNM"),l=Math.max,p=Math.min,h=Math.floor,v=/\$([$&'`]|\d\d?|<[^>]*>)/g,d=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){return[function(n,r){var o=u(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,i){if(r.REPLACE_KEEPS_$0||"string"==typeof i&&-1===i.indexOf("$0")){var u=n(e,t,this,i);if(u.done)return u.value}var h=o(t),v=String(this),d="function"==typeof i;d||(i=String(i));var y=h.global;if(y){var b=h.unicode;h.lastIndex=0}for(var m=[];;){var k=f(h,v);if(null===k)break;if(m.push(k),!y)break;""===String(k[0])&&(h.lastIndex=s(v,a(h.lastIndex),b))}for(var x,E="",w=0,S=0;S=w&&(E+=v.slice(w,T)+j,w=T+_.length)}return E+v.slice(w)}];function g(t,n,r,o,a,c){var u=r+t.length,s=o.length,f=d;return void 0!==a&&(a=i(a),f=v),e.call(c,f,(function(e,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[i.slice(1,-1)];break;default:var f=+i;if(0===f)return e;if(f>s){var l=h(f/10);return 0===l?e:l<=s?void 0===o[l-1]?i.charAt(1):o[l-1]+i.charAt(1):e}c=o[f-1]}return void 0===c?"":c}))}}))},Uydy:function(t,e,n){var r=n("I+eb"),o=n("HsHA"),i=Math.acosh,a=Math.log,c=Math.sqrt,u=Math.LN2;r({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+u:o(t-1+c(t-1)*c(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("QIpd"),a=1..toPrecision;r({target:"Number",proto:!0,forced:o((function(){return"1"!==a.call(1,void 0)}))||!o((function(){a.call({})}))},{toPrecision:function(t){return void 0===t?a.call(i(this)):a.call(i(this),t)}})},VpIT:function(t,e,n){var r=n("xDBR"),o=n("xs3f");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.0",mode:r?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("0GbY"),o=n("JBy8"),i=n("dBg+"),a=n("glrk");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("I+eb"),o=n("Xol8"),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(t){return o(t)&&i(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),c=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:c(1),end:c(2),trim:c(3)}},WjRb:function(t,e,n){var r=n("ROdP");t.exports=function(t){if(r(t))throw TypeError("The method doesn't accept regular expressions");return t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("I+eb"),o=n("0Dky"),i=n("hBjN");r({target:"Array",stat:!0,forced:o((function(){function t(){}return!(Array.of.call(t)instanceof t)}))},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)i(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";var r=n("bWFh"),o=n("ZWaQ");t.exports=r("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},YK6W:function(t,e,n){var r,o,i=n("2oRo"),a=n("s5pE"),c=i.process,u=c&&c.versions,s=u&&u.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},YNrV:function(t,e,n){"use strict";var r=n("g6v/"),o=n("0Dky"),i=n("33Wh"),a=n("dBg+"),c=n("0eef"),u=n("ewvW"),s=n("RK3t"),f=Object.assign,l=Object.defineProperty;t.exports=!f||o((function(){if(r&&1!==f({b:1},f(l({},"a",{enumerable:!0,get:function(){l(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=f({},t)[n]||"abcdefghijklmnopqrst"!=i(f({},e)).join("")}))?function(t,e){for(var n=u(t),o=arguments.length,f=1,l=a.f,p=c.f;o>f;)for(var h,v=s(arguments[f++]),d=l?i(v).concat(l(v)):i(v),g=d.length,y=0;g>y;)h=d[y++],r&&!p.call(v,h)||(n[h]=v[h]);return n}:f},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=n("DMt2").start,i=Math.abs,a=Date.prototype,c=a.getTime,u=a.toISOString;t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=u.call(new Date(-5e13-1))}))||!r((function(){u.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+o(i(t),n?6:4,0)+"-"+o(this.getUTCMonth()+1,2,0)+"-"+o(this.getUTCDate(),2,0)+"T"+o(this.getUTCHours(),2,0)+":"+o(this.getUTCMinutes(),2,0)+":"+o(this.getUTCSeconds(),2,0)+"."+o(e,3,0)+"Z"}:u},ZUd8:function(t,e,n){var r=n("ppGB"),o=n("HYAF"),i=function(t){return function(e,n){var i,a,c=String(o(e)),u=r(n),s=c.length;return u<0||u>=s?t?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?t?c.charAt(u):i:t?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t((function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)})),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,(function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("I+eb"),o=n("hXpO");r({target:"String",proto:!0,forced:n("6unK")("sup")},{sup:function(){return o(this,"sup","","")}})},a57n:function(t,e,n){n("dG/n")("search")},a5NK:function(t,e,n){var r=n("I+eb"),o=Math.log,i=Math.LOG10E;r({target:"Math",stat:!0},{log10:function(t){return o(t)*i}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("2oRo"),u=n("hh1v"),s=n("kRJp"),f=n("UTVS"),l=n("93I0"),p=n("0BK2");if(a){var h=new(0,c.WeakMap),v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=l("state");p[y]=!0,r=function(t,e){return s(t,y,e),e},o=function(t){return f(t,y)?t[y]:{}},i=function(t){return f(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo"),o=n("WKiH").trim,i=n("WJkJ"),a=r.parseFloat,c=1/a(i+"-0")!=-1/0;t.exports=c?function(t){var e=o(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},bWFh:function(t,e,n){"use strict";var r=n("I+eb"),o=n("2oRo"),i=n("lMq5"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n){var d=-1!==t.indexOf("Map"),g=-1!==t.indexOf("Weak"),y=d?"set":"add",b=o[t],m=b&&b.prototype,k=b,x={},E=function(t){var e=m[t];a(m,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof b||!(g||m.forEach&&!l((function(){(new b).entries().next()})))))k=n.getConstructor(e,t,d,y),c.REQUIRED=!0;else if(i(t,!0)){var w=new k,S=w[y](g?{}:-0,1)!=w,_=l((function(){w.has(1)})),T=p((function(t){new b(t)})),O=!g&&l((function(){for(var t=new b,e=5;e--;)t[y](e,e);return!t.has(-0)}));T||((k=e((function(e,n){s(e,k,t);var r=v(new b,e,k);return null!=n&&u(n,r[y],r,d),r}))).prototype=m,m.constructor=k),(_||O)&&(E("delete"),E("has"),d&&E("get")),(O||S)&&E(y),g&&m.clear&&delete m.clear}return x[t]=k,r({global:!0,forced:k!=b},x),h(k,t),g||n.setStrong(k,t,d),k}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("kRJp"),i=n("UTVS"),a=n("zk60"),c=n("iSVu"),u=n("afO8"),s=u.get,f=u.enforce,l=String(String).split("String");(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||c(this)}))},cDke:function(t,e,n){var r=n("I+eb"),o=n("0Dky"),i=n("BX/b").f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("I+eb"),o=n("jrUv"),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(t){var e=o(t=+t),n=o(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},eajv:function(t,e,n){var r=n("I+eb"),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):i(e+a(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("I+eb"),o=n("g6v/");r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("2oRo"),o=n("iSVu"),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},fHMY:function(t,e,n){var r,o=n("glrk"),i=n("N+g0"),a=n("eDl+"),c=n("0BK2"),u=n("G+Rx"),s=n("zBJ4"),f=n("93I0")("IE_PROTO"),l=function(){},p=function(t){return" ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/dist/SportsStore/main.51b6248b65201a3b0124.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},"0EUg":function(t,e,n){"use strict";n.d(e,"a",function(){return s});var r=n("bHdf");function s(){return Object(r.a)(1)}},"2QA8":function(t,e,n){"use strict";n.d(e,"a",function(){return r});const r=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())()},"2fFW":function(t,e,n){"use strict";n.d(e,"a",function(){return s});let r=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else r&&console.log("RxJS: Back to a better error behavior. Thank you. <3");r=t},get useDeprecatedSynchronousErrorHandling(){return r}}},"3Pt+":function(t,e,n){"use strict";n.d(e,"a",function(){return p}),n.d(e,"b",function(){return m}),n.d(e,"c",function(){return kt}),n.d(e,"d",function(){return V}),n.d(e,"e",function(){return L}),n.d(e,"f",function(){return _t}),n.d(e,"g",function(){return Ot}),n.d(e,"h",function(){return J}),n.d(e,"i",function(){return Et}),n.d(e,"j",function(){return X}),n.d(e,"k",function(){return St});var r=n("fXoL"),s=n("ofXK"),i=n("HDdC"),o=n("DH7j"),a=n("lJxs"),c=n("XoHu"),u=n("Cfvw");function l(t,e){return new i.a(n=>{const r=t.length;if(0===r)return void n.complete();const s=new Array(r);let i=0,o=0;for(let a=0;a{l||(l=!0,o++),s[a]=t},error:t=>n.error(t),complete:()=>{i++,i!==r&&l||(o===r&&n.next(e?e.reduce((t,e,n)=>(t[e]=s[n],t),{}):s),n.complete())}}))}})}const h=new r.q("NgValueAccessor"),d={provide:h,useExisting:Object(r.S)(()=>p),multi:!0};let p=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.D),r.Hb(r.l))},t.\u0275dir=r.Cb({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(t,e){1&t&&r.Rb("change",function(t){return e.onChange(t.target.checked)})("blur",function(){return e.onTouched()})},features:[r.wb([d])]}),t})();const f={provide:h,useExisting:Object(r.S)(()=>m),multi:!0},g=new r.q("CompositionEventMode");let m=(()=>{class t{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=t=>{},this.onTouched=()=>{},this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Object(s.q)()?Object(s.q)().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.D),r.Hb(r.l),r.Hb(g,8))},t.\u0275dir=r.Cb({type:t,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(t,e){1&t&&r.Rb("input",function(t){return e._handleInput(t.target.value)})("blur",function(){return e.onTouched()})("compositionstart",function(){return e._compositionStart()})("compositionend",function(t){return e._compositionEnd(t.target.value)})},features:[r.wb([f])]}),t})();function b(t){return null==t||0===t.length}function y(t){return null!=t&&"number"==typeof t.length}const v=new r.q("NgValidators"),_=new r.q("NgAsyncValidators"),w=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class C{static min(t){return e=>{if(b(e.value)||b(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(b(e.value)||b(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return b(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return b(t.value)||w.test(t.value)?null:{email:!0}}static minLength(t){return e=>b(e.value)||!y(e.value)?null:e.value.lengthy(e.value)&&e.value.length>t?{maxlength:{requiredLength:t,actualLength:e.value.length}}:null}static pattern(t){if(!t)return C.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(b(t.value))return null;const r=t.value;return e.test(r)?null:{pattern:{requiredPattern:n,actualValue:r}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(O);return 0==e.length?null:function(t){return x(E(t,e))}}static composeAsync(t){if(!t)return null;const e=t.filter(O);return 0==e.length?null:function(t){return function(...t){if(1===t.length){const e=t[0];if(Object(o.a)(e))return l(e,null);if(Object(c.a)(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return l(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return l(t=1===t.length&&Object(o.a)(t[0])?t[0]:t,null).pipe(Object(a.a)(t=>e(...t)))}return l(t,null)}(E(t,e).map(S)).pipe(Object(a.a)(x))}}}function O(t){return null!=t}function S(t){const e=Object(r.pb)(t)?Object(u.a)(t):t;return Object(r.ob)(e),e}function x(t){let e={};return t.forEach(t=>{e=null!=t?Object.assign(Object.assign({},e),t):e}),0===Object.keys(e).length?null:e}function E(t,e){return e.map(e=>e(t))}function T(t){return t.map(t=>function(t){return!t.validate}(t)?t:e=>t.validate(e))}function k(t){return null!=t?C.compose(T(t)):null}function A(t){return null!=t?C.composeAsync(T(t)):null}function j(t,e){return null===t?[e]:Array.isArray(t)?[...t,e]:[t,e]}let P=(()=>{class t{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=k(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=A(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=r.Cb({type:t}),t})(),R=(()=>{class t extends P{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(e){return I(e||t)},t.\u0275dir=r.Cb({type:t,features:[r.ub]}),t})();const I=r.Mb(R);class D extends P{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class N{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}let V=(()=>{class t extends N{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(D,2))},t.\u0275dir=r.Cb({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&r.zb("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[r.ub]}),t})(),L=(()=>{class t extends N{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(R,2))},t.\u0275dir=r.Cb({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:14,hostBindings:function(t,e){2&t&&r.zb("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[r.ub]}),t})();const M={provide:h,useExisting:Object(r.S)(()=>U),multi:!0};let U=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.D),r.Hb(r.l))},t.\u0275dir=r.Cb({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(t,e){1&t&&r.Rb("input",function(t){return e.onChange(t.target.value)})("blur",function(){return e.onTouched()})},features:[r.wb([M])]}),t})();const H={provide:h,useExisting:Object(r.S)(()=>$),multi:!0};let F=(()=>{class t{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),$=(()=>{class t{constructor(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=()=>{},this.onTouched=()=>{}}ngOnInit(){this._control=this._injector.get(D),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.D),r.Hb(r.l),r.Hb(F),r.Hb(r.r))},t.\u0275dir=r.Cb({type:t,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(t,e){1&t&&r.Rb("change",function(){return e.onChange()})("blur",function(){return e.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[r.wb([H])]}),t})();const q={provide:h,useExisting:Object(r.S)(()=>z),multi:!0};let z=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.D),r.Hb(r.l))},t.\u0275dir=r.Cb({type:t,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(t,e){1&t&&r.Rb("change",function(t){return e.onChange(t.target.value)})("input",function(t){return e.onChange(t.target.value)})("blur",function(){return e.onTouched()})},features:[r.wb([q])]}),t})();const B={provide:h,useExisting:Object(r.S)(()=>W),multi:!0};function K(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}let W=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=K(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=e=>{this.value=this._getOptionValue(e),t(this.value)}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.D),r.Hb(r.l))},t.\u0275dir=r.Cb({type:t,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(t,e){1&t&&r.Rb("change",function(t){return e.onChange(t.target.value)})("blur",function(){return e.onTouched()})},inputs:{compareWith:"compareWith"},features:[r.wb([B])]}),t})(),J=(()=>{class t{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(K(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.l),r.Hb(r.D),r.Hb(W,9))},t.\u0275dir=r.Cb({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();const G={provide:h,useExisting:Object(r.S)(()=>Q),multi:!0};function Z(t,e){return null==t?""+e:("string"==typeof e&&(e=`'${e}'`),e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}let Q=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=(t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)}}else e=(t,e)=>{t._setSelected(!1)};this._optionMap.forEach(e)}registerOnChange(t){this.onChange=e=>{const n=[];if(void 0!==e.selectedOptions){const t=e.selectedOptions;for(let e=0;e{class t{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(Z(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(Z(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.l),r.Hb(r.D),r.Hb(Q,9))},t.\u0275dir=r.Cb({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();function Y(t,e){et(t,e,!0),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&nt(t,e)})}(t,e),function(t,e){const n=(t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)};t.registerOnChange(n),e._registerOnDestroy(()=>{t._unregisterOnChange(n)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&nt(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),function(t,e){if(e.valueAccessor.setDisabledState){const n=t=>{e.valueAccessor.setDisabledState(t)};t.registerOnDisabledChange(n),e._registerOnDestroy(()=>{t._unregisterOnDisabledChange(n)})}}(t,e)}function tt(t,e){t.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(e)})}function et(t,e,n){const r=function(t){return t._rawValidators}(t);null!==e.validator?t.setValidators(j(r,e.validator)):"function"==typeof r&&t.setValidators([r]);const s=function(t){return t._rawAsyncValidators}(t);if(null!==e.asyncValidator?t.setAsyncValidators(j(s,e.asyncValidator)):"function"==typeof s&&t.setAsyncValidators([s]),n){const n=()=>t.updateValueAndValidity();tt(e._rawValidators,n),tt(e._rawAsyncValidators,n)}}function nt(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}const rt=[p,z,U,W,Q,$];function st(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const it="VALID",ot="INVALID",at="PENDING",ct="DISABLED";function ut(t){return(pt(t)?t.validators:t)||null}function lt(t){return Array.isArray(t)?k(t):t||null}function ht(t,e){return(pt(e)?e.asyncValidators:t)||null}function dt(t){return Array.isArray(t)?A(t):t||null}function pt(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class ft{constructor(t,e){this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=t,this._rawAsyncValidators=e,this._composedValidatorFn=lt(this._rawValidators),this._composedAsyncValidatorFn=dt(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===it}get invalid(){return this.status===ot}get pending(){return this.status==at}get disabled(){return this.status===ct}get enabled(){return this.status!==ct}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._rawValidators=t,this._composedValidatorFn=lt(t)}setAsyncValidators(t){this._rawAsyncValidators=t,this._composedAsyncValidatorFn=dt(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=at,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=ct,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=it,this._forEachChild(e=>{e.enable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==it&&this.status!==at||this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?ct:it}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=at,this._hasOwnPendingAsyncValidator=!0;const e=S(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(e,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e)return null;if(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length)return null;let r=t;return e.forEach(t=>{r=r instanceof mt?r.controls.hasOwnProperty(t)?r.controls[t]:null:r instanceof bt&&r.at(t)||null}),r}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new r.n,this.statusChanges=new r.n}_calculateStatus(){return this._allControlsDisabled()?ct:this.errors?ot:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(at)?at:this._anyControlsHaveStatus(ot)?ot:it}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){pt(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}class gt extends ft{constructor(t=null,e,n){super(ut(e),ht(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!n})}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){st(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){st(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){this._isBoxedValue(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}}class mt extends ft{constructor(t,e,n){super(ut(e),ht(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!n})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,r)=>{n.reset(t[r],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof gt?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[t])throw new Error(`Cannot find form control with name: ${t}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(const e of Object.keys(this.controls)){const n=this.controls[e];if(this.contains(e)&&t(n))return!0}return!1}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,r)=>{n=e(n,t,r)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class bt extends ft{constructor(t,e,n){super(ut(e),ht(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!n})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,r)=>{n.reset(t[r],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof gt?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(t))throw new Error("Cannot find form control at index "+t)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const yt={provide:R,useExisting:Object(r.S)(()=>_t)},vt=(()=>Promise.resolve(null))();let _t=(()=>{class t extends R{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new r.n,this.form=new mt({},k(t),A(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){vt.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Y(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){vt.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),st(this._directives,t)})}addFormGroup(t){vt.then(()=>{const e=this._findContainer(t.path),n=new mt({});(function(t,e){et(t,e,!1)})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){vt.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){vt.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(v,10),r.Hb(_,10))},t.\u0275dir=r.Cb({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&r.Rb("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[r.wb([yt]),r.ub]}),t})();const wt={provide:D,useExisting:Object(r.S)(()=>Ot)},Ct=(()=>Promise.resolve(null))();let Ot=(()=>{class t extends D{constructor(t,e,n,s){super(),this.control=new gt,this._registered=!1,this.update=new r.n,this._parent=t,this._setValidators(e),this._setAsyncValidators(n),this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e);let n=void 0,r=void 0,s=void 0;return e.forEach(t=>{var e;t.constructor===m?n=t:(e=t,rt.some(t=>e.constructor===t)?r=t:s=t)}),s||r||n||null}(0,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!Object.is(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?[...this._parent.path,this.name]:[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Y(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(t){Ct.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;Ct.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(R,9),r.Hb(v,10),r.Hb(_,10),r.Hb(h,10))},t.\u0275dir=r.Cb({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[r.wb([wt]),r.ub,r.vb]}),t})(),St=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=r.Cb({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})();const xt={provide:v,useExisting:Object(r.S)(()=>Et),multi:!0};let Et=(()=>{class t{constructor(){this._required=!1}get required(){return this._required}set required(t){this._required=null!=t&&!1!==t&&""+t!="false",this._onChange&&this._onChange()}validate(t){return this.required?C.required(t):null}registerOnValidatorChange(t){this._onChange=t}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=r.Cb({type:t,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(t,e){2&t&&r.yb("required",e.required?"":null)},inputs:{required:"required"},features:[r.wb([xt])]}),t})(),Tt=(()=>{class t{}return t.\u0275mod=r.Fb({type:t}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)}}),t})(),kt=(()=>{class t{}return t.\u0275mod=r.Fb({type:t}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)},providers:[F],imports:[Tt]}),t})()},"4I5i":function(t,e,n){"use strict";n.d(e,"a",function(){return r});const r=(()=>{function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t})()},"4Sfc":function(t,e,n){"use strict";n.d(e,"a",function(){return r});class r{constructor(t,e,n,r,s){this.id=t,this.name=e,this.category=n,this.description=r,this.price=s}}},"5+tZ":function(t,e,n){"use strict";n.d(e,"a",function(){return o});var r=n("lJxs"),s=n("Cfvw"),i=n("zx2A");function o(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?i=>i.pipe(o((n,i)=>Object(s.a)(t(n,i)).pipe(Object(r.a)((t,r)=>e(n,t,i,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new a(t,n)))}class a{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new c(t,this.project,this.concurrent))}}class c extends i.b{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}},"7o/Q":function(t,e,n){"use strict";n.d(e,"a",function(){return u});var r=n("n6bG"),s=n("gRHU"),i=n("quSY"),o=n("2QA8"),a=n("2fFW"),c=n("NJ4a");class u extends i.a{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=s.a;break;case 1:if(!t){this.destination=s.a;break}if("object"==typeof t){t instanceof u?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new l(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new l(this,t,e,n)}}[o.a](){return this}static create(t,e,n){const r=new u(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class l extends u{constructor(t,e,n,i){let o;super(),this._parentSubscriber=t;let a=this;Object(r.a)(e)?o=e:e&&(o=e.next,n=e.error,i=e.complete,e!==s.a&&(a=Object.create(e),Object(r.a)(a.unsubscribe)&&this.add(a.unsubscribe.bind(a)),a.unsubscribe=this.unsubscribe.bind(this))),this._context=a,this._next=o,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;a.a.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=a.a;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):Object(c.a)(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;Object(c.a)(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);a.a.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),a.a.useDeprecatedSynchronousErrorHandling)throw n;Object(c.a)(n)}}__tryOrSetError(t,e,n){if(!a.a.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return a.a.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(Object(c.a)(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}},"9ppp":function(t,e,n){"use strict";n.d(e,"a",function(){return r});const r=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})()},Cfvw:function(t,e,n){"use strict";n.d(e,"a",function(){return h});var r=n("HDdC"),s=n("SeVD"),i=n("quSY"),o=n("kJWO"),a=n("jZKg"),c=n("Lhse"),u=n("c2HN"),l=n("I55L");function h(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[o.a]}(t))return function(t,e){return new r.a(n=>{const r=new i.a;return r.add(e.schedule(()=>{const s=t[o.a]();r.add(s.subscribe({next(t){r.add(e.schedule(()=>n.next(t)))},error(t){r.add(e.schedule(()=>n.error(t)))},complete(){r.add(e.schedule(()=>n.complete()))}}))})),r})}(t,e);if(Object(u.a)(t))return function(t,e){return new r.a(n=>{const r=new i.a;return r.add(e.schedule(()=>t.then(t=>{r.add(e.schedule(()=>{n.next(t),r.add(e.schedule(()=>n.complete()))}))},t=>{r.add(e.schedule(()=>n.error(t)))}))),r})}(t,e);if(Object(l.a)(t))return Object(a.a)(t,e);if(function(t){return t&&"function"==typeof t[c.a]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new r.a(n=>{const r=new i.a;let s;return r.add(()=>{s&&"function"==typeof s.return&&s.return()}),r.add(e.schedule(()=>{s=t[c.a](),r.add(e.schedule(function(){if(n.closed)return;let t,e;try{const n=s.next();t=n.value,e=n.done}catch(r){return void n.error(r)}e?n.complete():(n.next(t),this.schedule())}))})),r})}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}(t,e):t instanceof r.a?t:new r.a(Object(s.a)(t))}},DH7j:function(t,e,n){"use strict";n.d(e,"a",function(){return r});const r=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))()},DZdm:function(t,e,n){"use strict";n.d(e,"a",function(){return o});var r=n("lJxs"),s=n("tk/3"),i=n("fXoL");let o=(()=>{class t{constructor(t){this.http=t,this.baseUrl="/api/"}getProducts(){return this.http.get(this.baseUrl+"products")}saveOrder(t){return this.http.post(this.baseUrl+"orders",t)}authenticate(t,e){return this.http.post(this.baseUrl+"login",{name:t,password:e}).pipe(Object(r.a)(t=>(this.auth_token=t.success?t.token:null,t.success)))}saveProduct(t){return this.http.post(this.baseUrl+"products",t,this.getOptions())}updateProduct(t){return this.http.put(`${this.baseUrl}products/${t.id}`,t,this.getOptions())}deleteProduct(t){return this.http.delete(`${this.baseUrl}products/${t}`,this.getOptions())}getOrders(){return this.http.get(this.baseUrl+"orders",this.getOptions())}deleteOrder(t){return this.http.delete(`${this.baseUrl}orders/${t}`,this.getOptions())}updateOrder(t){return this.http.put(`${this.baseUrl}orders/${t.id}`,t,this.getOptions())}getOptions(){return{headers:new s.c({Authorization:`Bearer<${this.auth_token}>`})}}}return t.\u0275fac=function(e){return new(e||t)(i.Ob(s.a))},t.\u0275prov=i.Db({token:t,factory:t.\u0275fac}),t})()},EY2u:function(t,e,n){"use strict";n.d(e,"a",function(){return s}),n.d(e,"b",function(){return i});var r=n("HDdC");const s=new r.a(t=>t.complete());function i(t){return t?function(t){return new r.a(e=>t.schedule(()=>e.complete()))}(t):s}},GyhO:function(t,e,n){"use strict";n.d(e,"a",function(){return i});var r=n("LRne"),s=n("0EUg");function i(...t){return Object(s.a)()(Object(r.a)(...t))}},HDdC:function(t,e,n){"use strict";n.d(e,"a",function(){return u});var r=n("7o/Q"),s=n("2QA8"),i=n("gRHU"),o=n("kJWO"),a=n("SpAZ"),c=n("2fFW");let u=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:o}=this,a=function(t,e,n){if(t){if(t instanceof r.a)return t;if(t[s.a])return t[s.a]()}return t||e||n?new r.a(t,e,n):new r.a(i.a)}(t,e,n);if(a.add(o?o.call(a,this.source):this.source||c.a.useDeprecatedSynchronousErrorHandling&&!a.syncErrorThrowable?this._subscribe(a):this._trySubscribe(a)),c.a.useDeprecatedSynchronousErrorHandling&&a.syncErrorThrowable&&(a.syncErrorThrowable=!1,a.syncErrorThrown))throw a.syncErrorValue;return a}_trySubscribe(t){try{return this._subscribe(t)}catch(e){c.a.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof r.a?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=l(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[o.a](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?a.a:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=l(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function l(t){if(t||(t=c.a.Promise||Promise),!t)throw new Error("no Promise impl found");return t}},I55L:function(t,e,n){"use strict";n.d(e,"a",function(){return r});const r=t=>t&&"number"==typeof t.length&&"function"!=typeof t},IzEk:function(t,e,n){"use strict";n.d(e,"a",function(){return o});var r=n("7o/Q"),s=n("4I5i"),i=n("EY2u");function o(t){return e=>0===t?Object(i.b)():e.lift(new a(t))}class a{constructor(t){if(this.total=t,this.total<0)throw new s.a}call(t,e){return e.subscribe(new c(t,this.total))}}class c extends r.a{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}},KqfI:function(t,e,n){"use strict";function r(){}n.d(e,"a",function(){return r})},LRne:function(t,e,n){"use strict";n.d(e,"a",function(){return o});var r=n("z+Ro"),s=n("yCtX"),i=n("jZKg");function o(...t){let e=t[t.length-1];return Object(r.a)(e)?(t.pop(),Object(i.a)(t,e)):Object(s.a)(t)}},Lhse:function(t,e,n){"use strict";function r(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}n.d(e,"a",function(){return s});const s=r()},NJ4a:function(t,e,n){"use strict";function r(t){setTimeout(()=>{throw t},0)}n.d(e,"a",function(){return r})},NXyV:function(t,e,n){"use strict";n.d(e,"a",function(){return o});var r=n("HDdC"),s=n("Cfvw"),i=n("EY2u");function o(t){return new r.a(e=>{let n;try{n=t()}catch(r){return void e.error(r)}return(n?Object(s.a)(n):Object(i.b)()).subscribe(e)})}},SeVD:function(t,e,n){"use strict";n.d(e,"a",function(){return l});var r=n("ngJS"),s=n("NJ4a"),i=n("Lhse"),o=n("kJWO"),a=n("I55L"),c=n("c2HN"),u=n("XoHu");const l=t=>{if(t&&"function"==typeof t[o.a])return l=t,t=>{const e=l[o.a]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if(Object(a.a)(t))return Object(r.a)(t);if(Object(c.a)(t))return n=t,t=>(n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,s.a),t);if(t&&"function"==typeof t[i.a])return e=t,t=>{const n=e[i.a]();for(;;){let e;try{e=n.next()}catch(r){return t.error(r),t}if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),t};{const e=Object(u.a)(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}var e,n,l}},SpAZ:function(t,e,n){"use strict";function r(t){return t}n.d(e,"a",function(){return r})},VRyK:function(t,e,n){"use strict";n.d(e,"a",function(){return a});var r=n("HDdC"),s=n("z+Ro"),i=n("bHdf"),o=n("yCtX");function a(...t){let e=Number.POSITIVE_INFINITY,n=null,a=t[t.length-1];return Object(s.a)(a)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof a&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof r.a?t[0]:Object(i.a)(e)(Object(o.a)(t,n))}},XNiG:function(t,e,n){"use strict";n.d(e,"b",function(){return u}),n.d(e,"a",function(){return l});var r=n("HDdC"),s=n("7o/Q"),i=n("quSY"),o=n("9ppp");class a extends i.a{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}var c=n("2QA8");class u extends s.a{constructor(t){super(t),this.destination=t}}let l=(()=>{class t extends r.a{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[c.a](){return new u(this)}lift(t){const e=new h(this,this);return e.operator=t,e}next(t){if(this.closed)throw new o.a;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew h(t,e),t})();class h extends l{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):i.a.EMPTY}}},XoHu:function(t,e,n){"use strict";function r(t){return null!==t&&"object"==typeof t}n.d(e,"a",function(){return r})},bHdf:function(t,e,n){"use strict";n.d(e,"a",function(){return i});var r=n("5+tZ"),s=n("SpAZ");function i(t=Number.POSITIVE_INFINITY){return Object(r.a)(s.a,t)}},bOdf:function(t,e,n){"use strict";n.d(e,"a",function(){return s});var r=n("5+tZ");function s(t,e){return Object(r.a)(t,e,1)}},c2HN:function(t,e,n){"use strict";function r(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}n.d(e,"a",function(){return r})},eIep:function(t,e,n){"use strict";n.d(e,"a",function(){return o});var r=n("lJxs"),s=n("Cfvw"),i=n("zx2A");function o(t,e){return"function"==typeof e?n=>n.pipe(o((n,i)=>Object(s.a)(t(n,i)).pipe(Object(r.a)((t,r)=>e(n,t,i,r))))):e=>e.lift(new a(t))}class a{constructor(t){this.project=t}call(t,e){return e.subscribe(new c(t,this.project))}}class c extends i.b{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e)}_innerSub(t){const e=this.innerSubscription;e&&e.unsubscribe();const n=new i.a(this),r=this.destination;r.add(n),this.innerSubscription=Object(i.c)(t,n),this.innerSubscription!==n&&r.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=void 0}notifyComplete(){this.innerSubscription=void 0,this.isStopped&&super._complete()}notifyNext(t){this.destination.next(t)}}},fXoL:function(t,e,n){"use strict";n.d(e,"a",function(){return P}),n.d(e,"b",function(){return ic}),n.d(e,"c",function(){return tc}),n.d(e,"d",function(){return Xa}),n.d(e,"e",function(){return Ya}),n.d(e,"f",function(){return Gc}),n.d(e,"g",function(){return Uc}),n.d(e,"h",function(){return ra}),n.d(e,"i",function(){return mc}),n.d(e,"j",function(){return jo}),n.d(e,"k",function(){return cc}),n.d(e,"l",function(){return Do}),n.d(e,"m",function(){return _r}),n.d(e,"n",function(){return Na}),n.d(e,"o",function(){return ti}),n.d(e,"p",function(){return p}),n.d(e,"q",function(){return j}),n.d(e,"r",function(){return mi}),n.d(e,"s",function(){return Qo}),n.d(e,"t",function(){return Xo}),n.d(e,"u",function(){return ac}),n.d(e,"v",function(){return fa}),n.d(e,"w",function(){return Fc}),n.d(e,"x",function(){return pa}),n.d(e,"y",function(){return Dc}),n.d(e,"z",function(){return vc}),n.d(e,"A",function(){return f}),n.d(e,"B",function(){return sc}),n.d(e,"C",function(){return rc}),n.d(e,"D",function(){return Vo}),n.d(e,"E",function(){return No}),n.d(e,"F",function(){return Sr}),n.d(e,"G",function(){return Mo}),n.d(e,"H",function(){return On}),n.d(e,"I",function(){return m}),n.d(e,"J",function(){return zc}),n.d(e,"K",function(){return ua}),n.d(e,"L",function(){return Tc}),n.d(e,"M",function(){return $}),n.d(e,"N",function(){return Uo}),n.d(e,"O",function(){return ma}),n.d(e,"P",function(){return Z}),n.d(e,"Q",function(){return Nc}),n.d(e,"R",function(){return Xe}),n.d(e,"S",function(){return U}),n.d(e,"T",function(){return Qe}),n.d(e,"U",function(){return Wc}),n.d(e,"V",function(){return jc}),n.d(e,"W",function(){return oc}),n.d(e,"X",function(){return ni}),n.d(e,"Y",function(){return mo}),n.d(e,"Z",function(){return wn}),n.d(e,"ab",function(){return rn}),n.d(e,"bb",function(){return $e}),n.d(e,"cb",function(){return ze}),n.d(e,"db",function(){return Je}),n.d(e,"eb",function(){return Ke}),n.d(e,"fb",function(){return Be}),n.d(e,"gb",function(){return We}),n.d(e,"hb",function(){return ho}),n.d(e,"ib",function(){return Kc}),n.d(e,"jb",function(){return po}),n.d(e,"kb",function(){return fo}),n.d(e,"lb",function(){return qe}),n.d(e,"mb",function(){return L}),n.d(e,"nb",function(){return Ei}),n.d(e,"ob",function(){return qi}),n.d(e,"pb",function(){return $i}),n.d(e,"qb",function(){return lo}),n.d(e,"rb",function(){return Dt}),n.d(e,"sb",function(){return b}),n.d(e,"tb",function(){return Fe}),n.d(e,"ub",function(){return yi}),n.d(e,"vb",function(){return An}),n.d(e,"wb",function(){return To}),n.d(e,"xb",function(){return os}),n.d(e,"yb",function(){return Pi}),n.d(e,"zb",function(){return Qi}),n.d(e,"Ab",function(){return Ja}),n.d(e,"Bb",function(){return at}),n.d(e,"Cb",function(){return ft}),n.d(e,"Db",function(){return w}),n.d(e,"Eb",function(){return C}),n.d(e,"Fb",function(){return ht}),n.d(e,"Gb",function(){return gt}),n.d(e,"Hb",function(){return Di}),n.d(e,"Ib",function(){return Hi}),n.d(e,"Jb",function(){return Ui}),n.d(e,"Kb",function(){return Mi}),n.d(e,"Lb",function(){return Fi}),n.d(e,"Mb",function(){return mr}),n.d(e,"Nb",function(){return oo}),n.d(e,"Ob",function(){return Pt}),n.d(e,"Pb",function(){return Ni}),n.d(e,"Qb",function(){return Qa}),n.d(e,"Rb",function(){return zi}),n.d(e,"Sb",function(){return Ga}),n.d(e,"Tb",function(){return Wi}),n.d(e,"Ub",function(){return Ia}),n.d(e,"Vb",function(){return Da}),n.d(e,"Wb",function(){return Vi}),n.d(e,"Xb",function(){return Pa}),n.d(e,"Yb",function(){return Wa}),n.d(e,"Zb",function(){return Ii}),n.d(e,"ac",function(){return ae}),n.d(e,"bc",function(){return Sn}),n.d(e,"cc",function(){return dt}),n.d(e,"dc",function(){return Ri}),n.d(e,"ec",function(){return no}),n.d(e,"fc",function(){return ro}),n.d(e,"gc",function(){return so}),n.d(e,"hc",function(){return io});var r=n("XNiG"),s=n("quSY"),i=n("HDdC"),o=n("VRyK"),a=n("oB13"),c=n("x+ZX");function u(){return new r.a}function l(t){return{toString:t}.toString()}const h="__parameters__";function d(t,e,n){return l(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty(h)?t[h]:Object.defineProperty(t,h,{value:[]})[h];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const p=d("Inject",t=>({token:t})),f=d("Optional"),g=d("Self"),m=d("SkipSelf");function b(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(b).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function y(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function v(t){for(let e in t)if(t[e]===v)return e;throw Error("Could not find renamed property on target object.")}function _(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function w(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function C(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function O(t){return S(t,E)||S(t,k)}function S(t,e){return t.hasOwnProperty(e)?t[e]:null}function x(t){return t&&(t.hasOwnProperty(T)||t.hasOwnProperty(A))?t[T]:null}const E=v({"\u0275prov":v}),T=v({"\u0275inj":v}),k=v({ngInjectableDef:v}),A=v({ngInjectorDef:v});class j{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=w({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}const P=new j("AnalyzeForEntryComponents");var R=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const I="undefined"!=typeof globalThis&&globalThis,D="undefined"!=typeof window&&window,N="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,V="undefined"!=typeof global&&global,L=I||V||D||N,M=v({__forward_ref__:v});function U(t){return t.__forward_ref__=U,t.toString=function(){return b(this())},t}function H(t){return F(t)?t():t}function F(t){return"function"==typeof t&&t.hasOwnProperty(M)&&t.__forward_ref__===U}const $=Function;function q(t,e){void 0===e&&(e=t);for(let n=0;nArray.isArray(t)?z(t,e):e(t))}function B(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function K(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function W(t,e,n){let r=G(t,e);return r>=0?t[1|r]=n:(r=~r,function(t,e,n,r){let s=t.length;if(s==e)t.push(n,r);else if(1===s)t.push(r,t[0]),t[0]=n;else{for(s--,t.push(t[s-1],t[s]);s>e;)t[s]=t[s-2],s--;t[e]=n,t[e+1]=r}}(t,r,e,n)),r}function J(t,e){const n=G(t,e);if(n>=0)return t[1|n]}function G(t,e){return function(t,e,n){let r=0,s=t.length>>1;for(;s!==r;){const n=r+(s-r>>1),i=t[n<<1];if(e===i)return n<<1;i>e?s=n:r=n+1}return~(s<<1)}(t,e)}var Z=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const Q={},X=[],Y=v({"\u0275cmp":v}),tt=v({"\u0275dir":v}),et=v({"\u0275pipe":v}),nt=v({"\u0275mod":v}),rt=v({"\u0275loc":v}),st=v({"\u0275fac":v}),it=v({__NG_ELEMENT_ID__:v});let ot=0;function at(t){return l(()=>{const e={},n={type:t.type,providersResolver:null,decls:t.decls,vars:t.vars,factory:null,template:t.template||null,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:e,inputs:null,outputs:null,exportAs:t.exportAs||null,onPush:t.changeDetection===R.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||X,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||Z.Emulated,id:"c",styles:t.styles||X,_:null,setInput:null,schemas:t.schemas||null,tView:null},r=t.directives,s=t.features,i=t.pipes;return n.id+=ot++,n.inputs=pt(t.inputs,e),n.outputs=pt(t.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(ct):null,n.pipeDefs=i?()=>("function"==typeof i?i():i).map(ut):null,n})}function ct(t){return mt(t)||function(t){return t[tt]||null}(t)}function ut(t){return function(t){return t[et]||null}(t)}const lt={};function ht(t){const e={type:t.type,bootstrap:t.bootstrap||X,declarations:t.declarations||X,imports:t.imports||X,exports:t.exports||X,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&l(()=>{lt[t.id]=t.type}),e}function dt(t,e){return l(()=>{const n=bt(t,!0);n.declarations=e.declarations||X,n.imports=e.imports||X,n.exports=e.exports||X})}function pt(t,e){if(null==t)return Q;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],i=s;Array.isArray(s)&&(i=s[1],s=s[0]),n[s]=r,e&&(e[s]=i)}return n}const ft=at;function gt(t){return{type:t.type,name:t.name,factory:null,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function mt(t){return t[Y]||null}function bt(t,e){const n=t[nt]||null;if(!n&&!0===e)throw new Error(`Type ${b(t)} does not have '\u0275mod' property.`);return n}function yt(t){return"string"==typeof t?t:null==t?"":""+t}function vt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():yt(t)}var _t=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let wt;function Ct(t){const e=wt;return wt=t,e}function Ot(t,e,n){const r=O(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&_t.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${b(t)}]`)}const St={},xt=/\n/gm,Et="__source",Tt=v({provide:String,useValue:v});let kt=void 0;function At(t){const e=kt;return kt=t,e}function jt(t,e=_t.Default){if(void 0===kt)throw new Error("inject() must be called from an injection context");return null===kt?Ot(t,void 0,e):kt.get(t,e&_t.Optional?null:void 0,e)}function Pt(t,e=_t.Default){return(wt||jt)(H(t),e)}function Rt(t){const e=[];for(let n=0;nvoid 0!==It?It:"undefined"!=typeof document?document:void 0};function Bt(t){for(;Array.isArray(t);)t=t[0];return t}function Kt(t,e){return Bt(e[t])}function Wt(t,e){return Bt(e[t.index])}function Jt(t,e){return t.data[e]}function Gt(t,e){return t[e]}function Zt(t,e){const n=e[t];return Lt(n)?n:n[0]}function Qt(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function Xt(t){return 4==(4&t[2])}function Yt(t){return 128==(128&t[2])}function te(t,e){return null==e?null:t[e]}function ee(t){t[18]=0}function ne(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const re={lFrame:Ee(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function se(){return re.bindingsEnabled}function ie(){return re.lFrame.lView}function oe(){return re.lFrame.tView}function ae(t){re.lFrame.contextLView=t}function ce(){let t=ue();for(;null!==t&&64===t.type;)t=t.parent;return t}function ue(){return re.lFrame.currentTNode}function le(t,e){const n=re.lFrame;n.currentTNode=t,n.isParent=e}function he(){return re.lFrame.isParent}function de(){return re.isInCheckNoChangesMode}function pe(t){re.isInCheckNoChangesMode=t}function fe(){const t=re.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}function ge(){return re.lFrame.bindingIndex}function me(){return re.lFrame.bindingIndex++}function be(t){const e=re.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function ye(t,e){const n=re.lFrame;n.bindingIndex=n.bindingRootIndex=t,ve(e)}function ve(t){re.lFrame.currentDirectiveIndex=t}function _e(){return re.lFrame.currentQueryIndex}function we(t){re.lFrame.currentQueryIndex=t}function Ce(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Oe(t,e,n){if(n&_t.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&_t.Host||(r=Ce(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=re.lFrame=xe();return r.currentTNode=e,r.lView=t,!0}function Se(t){const e=xe(),n=t[1];re.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function xe(){const t=re.lFrame,e=null===t?null:t.child;return null===e?Ee(t):e}function Ee(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function Te(){const t=re.lFrame;return re.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const ke=Te;function Ae(){const t=Te();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function je(){return re.lFrame.selectedIndex}function Pe(t){re.lFrame.selectedIndex=t}function Re(){const t=re.lFrame;return Jt(t.tView,t.selectedIndex)}let Ie;function De(t){var e;return(null===(e=function(){if(void 0===Ie&&(Ie=null,L.trustedTypes))try{Ie=L.trustedTypes.createPolicy("angular",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(e){}return Ie}())||void 0===e?void 0:e.createHTML(t))||t}class Ne{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see http://g.co/ng/security#xss)"}}class Ve extends Ne{getTypeName(){return"HTML"}}class Le extends Ne{getTypeName(){return"Style"}}class Me extends Ne{getTypeName(){return"Script"}}class Ue extends Ne{getTypeName(){return"URL"}}class He extends Ne{getTypeName(){return"ResourceURL"}}function Fe(t){return t instanceof Ne?t.changingThisBreaksApplicationSecurity:t}function $e(t,e){const n=qe(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see http://g.co/ng/security#xss)`)}return n===e}function qe(t){return t instanceof Ne&&t.getTypeName()||null}function ze(t){return new Ve(t)}function Be(t){return new Le(t)}function Ke(t){return new Me(t)}function We(t){return new Ue(t)}function Je(t){return new He(t)}let Ge=!0,Ze=!1;function Qe(){return Ze=!0,Ge}function Xe(){if(Ze)throw new Error("Cannot enable prod mode after platform setup.");Ge=!1}class Ye{getInertBodyElement(t){t=""+t;try{const e=(new window.DOMParser).parseFromString(De(t),"text/html").body;return e.removeChild(e.firstChild),e}catch(e){return null}}}class tn{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t);const e=this.inertDocument.createElement("body");t.appendChild(e)}}getInertBodyElement(t){const e=this.inertDocument.createElement("template");if("content"in e)return e.innerHTML=De(t),e;const n=this.inertDocument.createElement("body");return n.innerHTML=De(t),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let r=e.length-1;0rn(t.trim())).join(", ")),this.buf.push(" ",e,'="',vn(o),'"')}var r;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();hn.hasOwnProperty(e)&&!an.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(vn(t))}checkClobberedElement(t,e){if(e&&(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+t.outerHTML);return e}}const bn=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,yn=/([^\#-~ |!])/g;function vn(t){return t.replace(/&/g,"&").replace(bn,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(yn,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let _n;function wn(t,e){let n=null;try{_n=_n||function(t){return function(){try{return!!(new window.DOMParser).parseFromString(De(""),"text/html")}catch(t){return!1}}()?new Ye:new tn(t)}(t);let r=e?String(e):"";n=_n.getInertBodyElement(r);let s=5,i=r;do{if(0===s)throw new Error("Failed to sanitize html because the input is unstable");s--,r=i,i=n.innerHTML,n=_n.getInertBodyElement(r)}while(r!==i);const o=new mn,a=o.sanitizeChildren(Cn(n)||n);return Qe()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n){const t=Cn(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}function Cn(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var On=function(t){return t[t.NONE=0]="NONE",t[t.HTML=1]="HTML",t[t.STYLE=2]="STYLE",t[t.SCRIPT=3]="SCRIPT",t[t.URL=4]="URL",t[t.RESOURCE_URL=5]="RESOURCE_URL",t}({});function Sn(t){const e=function(){const t=ie();return t&&t[12]}();return e?e.sanitize(On.URL,t)||"":$e(t,"URL")?Fe(t):rn(yt(t))}function xn(t,e){return t.hasOwnProperty(st)?t[st]:null}class En extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Tn(t,e){const n=e?" in "+e:"";throw new En("201",`No provider for ${vt(t)} found${n}`)}class kn{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function An(){return jn}function jn(t){return t.type.prototype.ngOnChanges&&(t.setInput=Rn),Pn}function Pn(){const t=In(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===Q)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function Rn(t,e,n,r){const s=In(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:Q,current:null}),i=s.current||(s.current={}),o=s.previous,a=this.declaredInputs[n],c=o[a];i[a]=new kn(c&&c.currentValue,e,o===Q),t[r]=e}function In(t){return t.__ngSimpleChanges__||null}function Dn(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[o]<0&&(t[18]+=65536),(i>11>16&&(3&t[2])===e&&(t[2]+=2048,i.call(o)):i.call(o)}An.ngInherit=!0;const Hn=-1;class Fn{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function $n(t,e,n){const r=qt(t);let s=0;for(;se){o=i-1;break}}}for(;i>16,r=e;for(;n>0;)r=r[15],n--;return r}let Zn=!0;function Qn(t){const e=Zn;return Zn=t,e}let Xn=0;function Yn(t,e){const n=er(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,tr(r.data,t),tr(e,null),tr(r.blueprint,null));const s=nr(t,e),i=t.injectorIndex;if(Wn(s)){const t=Jn(s),n=Gn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[i+s]=n[t+s]|r[t+s]}return e[i+8]=s,i}function tr(t,e){t.push(0,0,0,0,0,0,0,0,e)}function er(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function nr(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Hn;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Hn}function rr(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(it)&&(r=n[it]),null==r&&(r=n[it]=Xn++);const s=255&r,i=1<=0?255&e:cr:e}(n);if("function"==typeof i){if(!Oe(e,t,r))return r&_t.Host?sr(s,n,r):ir(e,n,r,s);try{const t=i();if(null!=t||r&_t.Optional)return t;Tn(n)}finally{ke()}}else if("number"==typeof i){let s=null,o=er(t,e),a=Hn,c=r&_t.Host?e[16][6]:null;for((-1===o||r&_t.SkipSelf)&&(a=-1===o?nr(t,e):e[o+8],a!==Hn&&pr(r,!1)?(s=e[1],o=Jn(a),e=Gn(a,e)):o=-1);-1!==o;){const t=e[1];if(dr(i,o,t.data)){const t=ur(o,e,n,s,r,c);if(t!==ar)return t}a=e[o+8],a!==Hn&&pr(r,e[1].data[o+8]===c)&&dr(i,o,e)?(s=t,o=Jn(a),e=Gn(a,e)):o=-1}}}return ir(e,n,r,s)}const ar={};function cr(){return new fr(ce(),ie())}function ur(t,e,n,r,s,i){const o=e[1],a=o.data[t+8],c=lr(a,o,n,null==r?Ht(a)&&Zn:r!=o&&0!=(3&a.type),s&_t.Host&&i===a);return null!==c?hr(e,o,c,a):ar}function lr(t,e,n,r,s){const i=t.providerIndexes,o=e.data,a=1048575&i,c=t.directiveStart,u=i>>20,l=s?a+u:t.directiveEnd;for(let h=r?a:a+u;h=c&&t.type===n)return h}if(s){const t=o[c];if(t&&$t(t)&&t.type===n)return c}return null}function hr(t,e,n,r){let s=t[n];const i=e.data;if(s instanceof Fn){const o=s;o.resolving&&function(t,e){throw new En("200","Circular dependency in DI detected for "+t)}(vt(i[n]));const a=Qn(o.canSeeViewProviders);o.resolving=!0;const c=o.injectImpl?Ct(o.injectImpl):null;Oe(t,r,_t.Default);try{s=t[n]=o.factory(void 0,i,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:i}=e.type.prototype;if(r){const r=jn(e);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i))}(n,i[n],e)}finally{null!==c&&Ct(c),Qn(a),o.resolving=!1,ke()}}return s}function dr(t,e,n){const r=64&t,s=32&t;let i;return i=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(i&1<{const t=gr(H(e));return t?t():null};let n=xn(e);if(null===n){const t=x(e);n=t&&t.factory}return n||null}function mr(t){return l(()=>{const e=t.prototype.constructor,n=e[st]||gr(e),r=Object.prototype;let s=Object.getPrototypeOf(t.prototype).constructor;for(;s&&s!==r;){const t=s[st]||gr(s);if(t&&t!==n)return t;s=Object.getPrototypeOf(s)}return t=>new t})}function br(t){return t.ngDebugContext}function yr(t){return t.ngOriginalError}function vr(t,...e){t.error(...e)}class _r{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||vr}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?br(t)?br(t):this._findContext(yr(t)):null}_findOriginalError(t){let e=yr(t);for(;e&&yr(e);)e=yr(e);return e}}function wr(t,e){t.__ngContext__=e}const Cr=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(L))();function Or(t){return t instanceof Function?t():t}var Sr=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function xr(t,e){return(void 0)(t,e)}function Er(t){const e=t[3];return Mt(e)?e[3]:e}function Tr(t){return Ar(t[13])}function kr(t){return Ar(t[4])}function Ar(t){for(;null!==t&&!Mt(t);)t=t[4];return t}function jr(t,e,n,r,s){if(null!=r){let i,o=!1;Mt(r)?i=r:Lt(r)&&(o=!0,r=r[0]);const a=Bt(r);0===t&&null!==n?null==s?Lr(e,n,a):Vr(e,n,a,s||null,!0):1===t&&null!==n?Vr(e,n,a,s||null,!0):2===t?function(t,e,n){const r=Ur(t,e);r&&function(t,e,n,r){qt(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,a,o):3===t&&e.destroyNode(a),null!=i&&function(t,e,n,r,s){const i=n[7];i!==Bt(n)&&jr(e,t,r,i,s);for(let o=Vt;o0&&(t[n-1][4]=r[4]);const o=K(t,Vt+e);zr(r[1],s=r,s[11],2,null,null),s[0]=null,s[6]=null;const a=o[19];null!==a&&a.detachView(o[1]),r[3]=null,r[4]=null,r[2]&=-129}var s;return r}function Dr(t,e){if(!(256&e[2])){const n=e[11];qt(n)&&n.destroyNode&&zr(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Nr(t[1],t);for(;e;){let n=null;if(Lt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Lt(e)&&Nr(e[1],e),e=e[3];null===e&&(e=t),Lt(e)&&Nr(e[1],e),n=e&&e[4]}e=n}}(e)}}function Nr(t,e){if(!(256&e[2])){e[2]&=-129,e[2]|=256,function(t,e){let n;if(null!=t&&null!=(n=t.destroyHooks))for(let r=0;r=0?t[a]():t[-a].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&qt(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&Mt(e[3])){n!==e[3]&&Rr(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Vr(t,e,n,r,s){qt(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Lr(t,e,n){qt(t)?t.appendChild(e,n):e.appendChild(n)}function Mr(t,e,n,r,s){null!==r?Vr(t,e,n,r,s):Lr(t,e,n)}function Ur(t,e){return qt(t)?t.parentNode(e):e.parentNode}function Hr(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===Z.None||e===Z.Emulated)return null}return Wt(r,n)}(t,e.parent,n)}(t,r,e),i=e[11],o=function(t,e,n){return function(t,e,n){return 40&t.type?Wt(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let a=0;ai?"":s[l+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==Jr(e,u,0)||2&r&&u!==t){if(ts(r))return!1;o=!0}}}}else{if(!o&&!ts(r)&&!ts(c))return!1;if(o&&ts(c))continue;o=!1,r=c|1&r}}return ts(r)||o}function ts(t){return 0==(1&t)}function es(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+o:4&r&&(s+=" "+o);else""===s||ts(o)||(e+=rs(i,s),s=""),r=o,i=i||!ts(r);n++}return""!==s&&(e+=rs(i,s)),e}const is={};function os(t){as(oe(),ie(),je()+t,de())}function as(t,e,n,r){if(!r)if(3==(3&e[2])){const r=t.preOrderCheckHooks;null!==r&&Nn(e,r,n)}else{const r=t.preOrderHooks;null!==r&&Vn(e,r,0,n)}Pe(n)}function cs(t,e){return t<<17|e<<2}function us(t){return t>>17&32767}function ls(t){return 2|t}function hs(t){return(131068&t)>>2}function ds(t,e){return-131069&t|e<<2}function ps(t){return 1|t}function fs(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rNt&&as(t,e,Nt,de()),n(r,s)}finally{Pe(i)}}function Cs(t,e,n){se()&&(function(t,e,n,r){const s=n.directiveStart,i=n.directiveEnd;t.firstCreatePass||Yn(n,e),wr(r,e);const o=n.initialInputs;for(let a=s;a0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=i&&n.push(i),n.push(r,s,o)}}function Ps(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function Rs(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function Is(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Fs(n)}}function Fs(t){for(let n=Tr(t);null!==n;n=kr(n))for(let t=Vt;t0&&Fs(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Fs(r)}}function $s(t,e){const n=Zt(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Gs(t){return t[7]||(t[7]=[])}function Zs(t,e){const n=t[9],r=n?n.get(_r,null):null;r&&r.handleError(e)}function Qs(t,e,n,r,s){for(let i=0;ithis.processProvider(n,t,e)),z([t],t=>this.processInjectorType(t,[],s)),this.records.set(ti,di(void 0,this));const i=this.records.get(ni);this.scope=null!=i?i.value:null,this.source=r||("object"==typeof t?null:b(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=St,n=_t.Default){this.assertNotDestroyed();const r=At(this);try{if(!(n&_t.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof j)&&O(t);e=n&&this.injectableDefInScope(n)?di(li(t),ri):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&_t.Self?ai():this.parent).get(t,e=n&_t.Optional&&e===St?null:e)}catch(i){if("NullInjectorError"===i.name){if((i.ngTempTokenPath=i.ngTempTokenPath||[]).unshift(b(t)),r)throw i;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[Et]&&s.unshift(e[Et]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=b(e);if(Array.isArray(e))s=e.map(b).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):b(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(xt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(i,t,"R3InjectorError",this.source)}throw i}finally{At(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(b(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=H(t)))return!1;let r=x(t);const s=null==r&&t.ngModule||void 0,i=void 0===s?t:s,o=-1!==n.indexOf(i);if(void 0!==s&&(r=x(s)),null==r)return!1;if(null!=r.imports&&!o){let t;n.push(i);try{z(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||ii))}}this.injectorDefTypes.add(i),this.records.set(i,di(r.factory,ri));const a=r.providers;if(null!=a&&!o){const e=t;z(a,t=>this.processProvider(t,e,a))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=fi(t=H(t))?t:H(t&&t.provide);const s=function(t,e,n){return pi(t)?di(void 0,t.useValue):di(hi(t),ri)}(t);if(fi(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=di(void 0,ri,!0),e.factory=()=>Rt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===ri&&(e.value=si,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function li(t){const e=O(t),n=null!==e?e.factory:xn(t);if(null!==n)return n;const r=x(t);if(null!==r)return r.factory;if(t instanceof j)throw new Error(`Token ${b(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function hi(t,e,n){let r=void 0;if(fi(t)){const e=H(t);return xn(e)||li(e)}if(pi(t))r=()=>H(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Rt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Pt(H(t.useExisting));else{const e=H(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return xn(e)||li(e);r=()=>new e(...Rt(t.deps))}var s;return r}function di(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function pi(t){return null!==t&&"object"==typeof t&&Tt in t}function fi(t){return"function"==typeof t}const gi=function(t,e,n){return function(t,e=null,n=null,r){const s=ci(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let mi=(()=>{class t{static create(t,e){return Array.isArray(t)?gi(t,e,""):gi(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=St,t.NULL=new ei,t.\u0275prov=w({token:t,providedIn:"any",factory:()=>Pt(ti)}),t.__NG_ELEMENT_ID__=-1,t})();function bi(t,e){Dn(Qt(t)[1],ce())}function yi(t){let e=Object.getPrototypeOf(t.type.prototype).constructor,n=!0;const r=[t];for(;e;){let s=void 0;if($t(t))s=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");s=e.\u0275dir}if(s){if(n){r.push(s);const e=t;e.inputs=vi(t.inputs),e.declaredInputs=vi(t.declaredInputs),e.outputs=vi(t.outputs);const n=s.hostBindings;n&&Ci(t,n);const i=s.viewQuery,o=s.contentQueries;if(i&&_i(t,i),o&&wi(t,o),_(t.inputs,s.inputs),_(t.declaredInputs,s.declaredInputs),_(t.outputs,s.outputs),$t(s)&&s.data.animation){const e=t.data;e.animation=(e.animation||[]).concat(s.data.animation)}}const e=s.features;if(e)for(let r=0;r=0;r--){const s=t[r];s.hostVars=e+=s.hostVars,s.hostAttrs=Bn(s.hostAttrs,n=Bn(n,s.hostAttrs))}}(r)}function vi(t){return t===Q?{}:t===X?[]:t}function _i(t,e){const n=t.viewQuery;t.viewQuery=n?(t,r)=>{e(t,r),n(t,r)}:e}function wi(t,e){const n=t.contentQueries;t.contentQueries=n?(t,r,s)=>{e(t,r,s),n(t,r,s)}:e}function Ci(t,e){const n=t.hostBindings;t.hostBindings=n?(t,r)=>{e(t,r),n(t,r)}:e}let Oi=null;function Si(){if(!Oi){const t=L.Symbol;if(t&&t.iterator)Oi=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;ea(Bt(t[r.index])).target:r.index;if(qt(n)){let o=null;if(!a&&c&&(o=function(t,e,n,r){const s=t.cleanup;if(null!=s)for(let i=0;in?t[n]:null}"string"==typeof t&&(i+=2)}return null}(t,e,s,r.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=i,o.__ngLastListenerFn__=i,h=!1;else{i=Ki(r,e,i,!1);const t=n.listen(p.name||f,s,i);l.push(i,t),u&&u.push(s,m,g,g+1)}}else i=Ki(r,e,i,!0),f.addEventListener(s,i,o),l.push(i),u&&u.push(s,m,g,o)}const d=r.outputs;let p;if(h&&null!==d&&(p=d[s])){const t=p.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,re.lFrame.contextLView))[8]}(t)}const Ji=[];function Gi(t,e,n,r,s){const i=t[n+1],o=null===e;let a=r?us(i):hs(i),c=!1;for(;0!==a&&(!1===c||o);){const n=t[a+1];Zi(t[a],e)&&(c=!0,t[a+1]=r?ps(n):ls(n)),a=r?us(n):hs(n)}c&&(t[n+1]=r?ls(i):ps(i))}function Zi(t,e){return null===t||null==e||(Array.isArray(t)?t[1]:t)===e||!(!Array.isArray(t)||"string"!=typeof e)&&G(t,e)>=0}function Qi(t,e){return function(t,e,n,r){const s=ie(),i=oe(),o=be(2);i.firstUpdatePass&&function(t,e,n,r){const s=t.data;if(null===s[n+1]){const i=s[je()],o=function(t,e){return e>=t.expandoStartIndex}(t,n);(function(t,e){return 0!=(16&t.flags)})(i)&&null===e&&!o&&(e=!1),e=function(t,e,n,r){const s=function(t){const e=re.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}(t);let i=e.residualClasses;if(null===s)0===e.classBindings&&(n=Yi(n=Xi(null,t,e,n,r),e.attrs,r),i=null);else{const o=e.directiveStylingLast;if(-1===o||t[o]!==s)if(n=Xi(s,t,e,n,r),null===i){let n=function(t,e,n){const r=e.classBindings;if(0!==hs(r))return t[us(r)]}(t,e);void 0!==n&&Array.isArray(n)&&(n=Xi(null,t,e,n[1],r),n=Yi(n,e.attrs,r),function(t,e,n,r){t[us(e.classBindings)]=r}(t,e,0,n))}else i=function(t,e,n){let r=void 0;const s=e.directiveEnd;for(let i=1+e.directiveStylingLast;i0)&&(l=!0)}else u=n;if(s)if(0!==c){const e=us(t[a+1]);t[r+1]=cs(e,a),0!==e&&(t[e+1]=ds(t[e+1],r)),t[a+1]=131071&t[a+1]|r<<17}else t[r+1]=cs(a,0),0!==a&&(t[a+1]=ds(t[a+1],r)),a=r;else t[r+1]=cs(c,0),0===a?a=r:t[c+1]=ds(t[c+1],r),c=r;l&&(t[r+1]=ls(t[r+1])),Gi(t,u,r,!0),Gi(t,u,r,!1),function(t,e,n,r,s){const i=t.residualClasses;null!=i&&"string"==typeof e&&G(i,e)>=0&&(n[r+1]=ps(n[r+1]))}(e,u,t,r),o=cs(a,c),e.classBindings=o}(s,i,e,n,o)}}(i,t,o,true),e!==is&&Ai(s,o,e)&&function(t,e,n,r,s,i,o,a){if(!(3&e.type))return;const c=t.data,u=c[a+1];eo(1==(1&u)?to(c,e,n,s,hs(u),o):void 0)||(eo(i)||function(t){return 2==(2&t)}(u)&&(i=to(c,null,n,s,a,o)),function(t,e,n,r,s){const i=qt(t);s?i?t.addClass(n,r):n.classList.add(r):i?t.removeClass(n,r):n.classList.remove(r)}(r,0,Kt(je(),n),s,i))}(i,i.data[je()],s,s[11],t,s[o+1]=function(t,e){return null==t||"object"==typeof t&&(t=b(Fe(t))),t}(e),true,o)}(t,e),Qi}function Xi(t,e,n,r,s){let i=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[s],i=Array.isArray(e),c=i?e[1]:e,u=null===c;let l=n[s+1];l===is&&(l=u?Ji:void 0);let h=u?J(l,r):c===r?l:void 0;if(i&&!eo(h)&&(h=J(e,r)),eo(h)&&(a=h,o))return a;const d=t[s+1];s=o?us(d):hs(d)}if(null!==e){let t=i?e.residualClasses:e.residualStyles;null!=t&&(a=J(t,r))}return a}function eo(t){return void 0!==t}function no(t,e=""){const n=ie(),r=oe(),s=t+Nt,i=r.firstCreatePass?ms(r,s,1,e,null):r.data[s],o=n[s]=function(t,e){return qt(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Hr(r,n,o,i),le(i,!1)}function ro(t){return so("",t,""),ro}function so(t,e,n){const r=ie(),s=function(t,e,n,r){return Ai(t,me(),n)?e+yt(n)+r:is}(r,t,e,n);return s!==is&&Xs(r,je(),s),so}function io(t,e,n,r,s){const i=ie(),o=function(t,e,n,r,s,i){const o=ji(t,ge(),n,s);return be(2),o?e+yt(n)+r+yt(s)+i:is}(i,t,e,n,r,s);return o!==is&&Xs(i,je(),o),io}function oo(t,e,n){const r=ie();return Ai(r,me(),e)&&ks(oe(),Re(),r,t,e,r[11],n,!0),oo}const ao=void 0;var co=["en",[["a","p"],["AM","PM"],ao],[["AM","PM"],ao,ao],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],ao,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],ao,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",ao,"{1} 'at' {0}",ao],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let uo={};function lo(t,e,n){"string"!=typeof e&&(n=e,e=t[mo.LocaleId]),e=e.toLowerCase().replace(/_/g,"-"),uo[e]=t,n&&(uo[e][mo.ExtraData]=n)}function ho(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=go(e);if(n)return n;const r=e.split("-")[0];if(n=go(r),n)return n;if("en"===r)return co;throw new Error(`Missing locale data for the locale "${t}".`)}function po(t){return ho(t)[mo.CurrencyCode]||null}function fo(t){return ho(t)[mo.PluralCase]}function go(t){return t in uo||(uo[t]=L.ng&&L.ng.common&&L.ng.common.locales&&L.ng.common.locales[t]),uo[t]}var mo=function(t){return t[t.LocaleId=0]="LocaleId",t[t.DayPeriodsFormat=1]="DayPeriodsFormat",t[t.DayPeriodsStandalone=2]="DayPeriodsStandalone",t[t.DaysFormat=3]="DaysFormat",t[t.DaysStandalone=4]="DaysStandalone",t[t.MonthsFormat=5]="MonthsFormat",t[t.MonthsStandalone=6]="MonthsStandalone",t[t.Eras=7]="Eras",t[t.FirstDayOfWeek=8]="FirstDayOfWeek",t[t.WeekendRange=9]="WeekendRange",t[t.DateFormat=10]="DateFormat",t[t.TimeFormat=11]="TimeFormat",t[t.DateTimeFormat=12]="DateTimeFormat",t[t.NumberSymbols=13]="NumberSymbols",t[t.NumberFormats=14]="NumberFormats",t[t.CurrencyCode=15]="CurrencyCode",t[t.CurrencySymbol=16]="CurrencySymbol",t[t.CurrencyName=17]="CurrencyName",t[t.Currencies=18]="Currencies",t[t.Directionality=19]="Directionality",t[t.PluralCase=20]="PluralCase",t[t.ExtraData=21]="ExtraData",t}({});const bo="en-US";let yo=bo;function vo(t){var e,n;n="Expected localeId to be defined",null==(e=t)&&function(t,e,n,r){throw new Error("ASSERTION ERROR: "+t+` [Expected=> null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(yo=t.toLowerCase().replace(/_/g,"-"))}function _o(t,e,n,r,s){if(t=H(t),Array.isArray(t))for(let i=0;i>20;if(fi(t)||!t.multi){const r=new Fn(c,s,Di),p=Oo(a,e,s?l:l+d,h);-1===p?(rr(Yn(u,o),i,a),wo(i,t,e.length),e.push(a),u.directiveStart++,u.directiveEnd++,s&&(u.providerIndexes+=1048576),n.push(r),o.push(r)):(n[p]=r,o[p]=r)}else{const p=Oo(a,e,l+d,h),f=Oo(a,e,l,l+d),g=p>=0&&n[p],m=f>=0&&n[f];if(s&&!m||!s&&!g){rr(Yn(u,o),i,a);const l=function(t,e,n,r,s){const i=new Fn(t,n,Di);return i.multi=[],i.index=e,i.componentProviders=0,Co(i,s,r&&!n),i}(s?xo:So,n.length,s,r,c);!s&&m&&(n[f].providerFactory=l),wo(i,t,e.length,0),e.push(a),u.directiveStart++,u.directiveEnd++,s&&(u.providerIndexes+=1048576),n.push(l),o.push(l)}else wo(i,t,p>-1?p:f,Co(n[s?f:p],c,!s&&r));!s&&r&&m&&n[f].componentProviders++}}}function wo(t,e,n,r){const s=fi(e);if(s||e.useClass){const i=(e.useClass||e).prototype.ngOnDestroy;if(i){const o=t.destroyHooks||(t.destroyHooks=[]);if(!s&&e.multi){const t=o.indexOf(n);-1===t?o.push(n,[r,i]):o[t+1].push(r,i)}else o.push(n,i)}}}function Co(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function Oo(t,e,n,r){for(let s=n;s{n.providersResolver=(n,r)=>function(t,e,n){const r=oe();if(r.firstCreatePass){const s=$t(t);_o(n,r.data,r.blueprint,s,!0),_o(e,r.data,r.blueprint,s,!1)}}(n,r?r(t):t,e)}}class ko{}class Ao{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${b(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let jo=(()=>{class t{}return t.NULL=new Ao,t})();function Po(...t){}function Ro(t,e){return new Do(Wt(t,e))}const Io=function(){return Ro(ce(),ie())};let Do=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=Io,t})();class No{}let Vo=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Lo(),t})();const Lo=function(){const t=ie(),e=Zt(ce().index,t);return function(t){return t[11]}(Lt(e)?e:t)};let Mo=(()=>{class t{}return t.\u0275prov=w({token:t,providedIn:"root",factory:()=>null}),t})();class Uo{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Ho=new Uo("11.0.2");class Fo{constructor(){}supports(t){return Ei(t)}create(t){return new qo(t)}}const $o=(t,e)=>e;class qo{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||$o}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const i=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(i&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),i=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new zo(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Ko),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Ko),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class zo{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Bo{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Ko{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Bo,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function Wo(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new Zo(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Zo{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Qo=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new m,new f]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=w({token:t,providedIn:"root",factory:()=>new t([new Fo])}),t})(),Xo=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new m,new f]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=w({token:t,providedIn:"root",factory:()=>new t([new Jo])}),t})();function Yo(t,e,n,r,s=!1){for(;null!==n;){const i=e[n.index];if(null!==i&&r.push(Bt(i)),Mt(i))for(let t=Vt;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}Dr(this._lView[1],this._lView)}onDestroy(t){Es(this._lView[1],this._lView,null,t)}markForCheck(){zs(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Bs(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){pe(!0);try{Bs(t,e,n)}finally{pe(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zr(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class ea extends ta{constructor(t){super(t),this._view=t}detectChanges(){Ks(this._view)}checkNoChanges(){!function(t){pe(!0);try{Ks(t)}finally{pe(!1)}}(this._view)}get context(){return null}}const na=sa;let ra=(()=>{class t{}return t.__NG_ELEMENT_ID__=na,t.__ChangeDetectorRef__=!0,t})();function sa(t=!1){return function(t,e,n){if(!n&&Ht(t)){const n=Zt(t.index,e);return new ta(n,n)}return 47&t.type?new ta(e[16],e):null}(ce(),ie(),t)}const ia=[new Jo],oa=new Qo([new Fo]),aa=new Xo(ia),ca=function(){return da(ce(),ie())};let ua=(()=>{class t{}return t.__NG_ELEMENT_ID__=ca,t})();const la=ua,ha=class extends la{constructor(t,e,n){super(),this._declarationLView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=gs(this._declarationLView,e,t,16,null,e.declTNode,null,null,null,null);n[17]=this._declarationLView[this._declarationTContainer.index];const r=this._declarationLView[19];return null!==r&&(n[19]=r.createEmbeddedView(e)),ys(e,n,t),new ta(n)}};function da(t,e){return 4&t.type?new ha(e,t,Ro(t,e)):null}class pa{}class fa{}const ga=function(){return wa(ce(),ie())};let ma=(()=>{class t{}return t.__NG_ELEMENT_ID__=ga,t})();const ba=ma,ya=class extends ba{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostLView=n}get element(){return Ro(this._hostTNode,this._hostLView)}get injector(){return new fr(this._hostTNode,this._hostLView)}get parentInjector(){const t=nr(this._hostTNode,this._hostLView);if(Wn(t)){const e=Gn(t,this._hostLView),n=Jn(t);return new fr(e[1].data[n+8],e)}return new fr(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const e=va(this._lContainer);return null!==e&&e[t]||null}get length(){return this._lContainer.length-Vt}createEmbeddedView(t,e,n){const r=t.createEmbeddedView(e||{});return this.insert(r,n),r}createComponent(t,e,n,r,s){const i=n||this.parentInjector;if(!s&&null==t.ngModule&&i){const t=i.get(pa,null);t&&(s=t)}const o=t.create(i,r,void 0,s);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,r=n[1];if(Mt(n[3])){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],r=new ya(e,e[6],e[3]);r.detach(r.indexOf(t))}}const s=this._adjustIndex(e),i=this._lContainer;!function(t,e,n,r){const s=Vt+r,i=n.length;r>0&&(n[s-1][4]=e),rCr});class Ea extends ko{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(ss).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return Sa(this.componentDef.inputs)}get outputs(){return Sa(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const i=t.get(n,Ca,s);return i!==Ca||r===Ca?i:e.get(n,r,s)}}}(t,r.injector):t,i=s.get(No,zt),o=s.get(Mo,null),a=i.createRenderer(null,this.componentDef),c=this.componentDef.selectors[0][0]||"div",u=n?function(t,e,n){if(qt(t))return t.selectRootElement(e,n===Z.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(a,n,this.componentDef.encapsulation):Pr(i.createRenderer(null,this.componentDef),c,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(c)),l=this.componentDef.onPush?576:528,h={components:[],scheduler:Cr,clean:Js,playerHandler:null,flags:0},d=xs(0,null,null,1,0,null,null,null,null,null),p=gs(null,d,h,l,null,null,i,a,o,s);let f,g;Se(p);try{const t=function(t,e,n,r,s,i){const o=n[1];n[20]=t;const a=ms(o,20,2,"#host",null),c=a.mergedAttrs=e.hostAttrs;null!==c&&(Ys(a,c,!0),null!==t&&($n(s,t,c),null!==a.classes&&Wr(s,t,a.classes),null!==a.styles&&Kr(s,t,a.styles)));const u=r.createRenderer(t,e),l=gs(n,Ss(e),null,e.onPush?64:16,n[20],a,r,u,null,null);return o.firstCreatePass&&(rr(Yn(a,n),o,e.type),Rs(o,a),Ds(a,n.length,1)),qs(n,l),n[20]=l}(u,this.componentDef,p,i,a);if(u)if(n)$n(a,u,["ng-version",Ho.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wr(a,u,e.join(" "))}if(g=Jt(d,Nt),void 0!==e){const t=g.projection=[];for(let n=0;nt(o,e)),e.contentQueries){const t=ce();e.contentQueries(1,o,t.directiveStart)}const a=ce();return!i.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Pe(a.index),js(n[1],a,0,a.directiveStart,a.directiveEnd,e),Ps(e,o)),o}(t,this.componentDef,p,h,[bi]),ys(d,p,null)}finally{Ae()}return new Ta(this.componentType,f,Ro(g,p),p,g)}}class Ta extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new ea(r),this.componentType=t}get injector(){return new fr(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const ka=new Map;class Aa extends pa{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Oa(this);const n=bt(t),r=t[rt]||null;r&&vo(r),this._bootstrapComponents=Or(n.bootstrap),this._r3Injector=ci(t,e,[{provide:pa,useValue:this},{provide:jo,useValue:this.componentFactoryResolver}],b(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=mi.THROW_IF_NOT_FOUND,n=_t.Default){return t===mi||t===pa||t===ti?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class ja extends fa{constructor(t){super(),this.moduleType=t,null!==bt(t)&&function(t){const e=new Set;!function t(n){const r=bt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${b(e)} vs ${b(e.name)}`)}(s,ka.get(s),n),ka.set(s,n));const i=Or(r.imports);for(const o of i)e.has(o)||(e.add(o),t(o))}(t)}(t)}create(t){return new Aa(this.moduleType,t)}}function Pa(t,e,n,r){return function(t,e,n,r,s,i){const o=e+n;return Ai(t,o,s)?ki(t,o+1,i?r.call(i,s):r(s)):Ra(t,o+1)}(ie(),fe(),t,e,n,r)}function Ra(t,e){const n=t[e];return n===is?void 0:n}function Ia(t,e){const n=oe();let r;const s=t+Nt;n.firstCreatePass?(r=function(t,e){if(e)for(let n=e.length-1;n>=0;n--){const r=e[n];if(t===r.name)return r}throw new En("302",`The pipe '${t}' could not be found!`)}(e,n.pipeRegistry),n.data[s]=r,r.onDestroy&&(n.destroyHooks||(n.destroyHooks=[])).push(s,r.onDestroy)):r=n.data[s];const i=r.factory||(r.factory=xn(r.type)),o=Ct(Di);try{const t=Qn(!1),e=i();return Qn(t),function(t,e,n,r){n>=t.data.length&&(t.data[n]=null,t.blueprint[n]=null),e[n]=r}(n,ie(),s,e),e}finally{Ct(o)}}function Da(t,e,n,r,s,i){const o=t+Nt,a=ie(),c=Gt(a,o);return function(t,e){return xi.isWrapped(e)&&(e=xi.unwrap(e),t[ge()]=is),e}(a,function(t,e){return t[1].data[e].pure}(a,o)?function(t,e,n,r,s,i,o,a,c){const u=e+n;return function(t,e,n,r,s,i){const o=ji(t,e,n,r);return ji(t,e+2,s,i)||o}(t,u,s,i,o,a)?ki(t,u+4,c?r.call(c,s,i,o,a):r(s,i,o,a)):Ra(t,u+4)}(a,fe(),e,c.transform,n,r,s,i,c):c.transform(n,r,s,i))}const Na=class extends r.a{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,i=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(i=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(i=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const a=super.subscribe(r,i,o);return t instanceof s.a&&t.add(a),a}};function Va(){return this._results[Si()]()}class La{constructor(){this.dirty=!0,this._results=[],this.changes=new Na,this.length=0;const t=Si(),e=La.prototype;e[t]||(e[t]=Va)}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t){this._results=q(t),this.dirty=!1,this.length=this._results.length,this.last=this._results[this.length-1],this.first=this._results[0]}notifyOnChanges(){this.changes.emit(this)}setDirty(){this.dirty=!0}destroy(){this.changes.complete(),this.changes.unsubscribe()}}class Ma{constructor(t){this.queryList=t,this.matches=null}clone(){return new Ma(this.queryList)}setDirty(){this.queryList.setDirty()}}class Ua{constructor(t=[]){this.queries=t}createEmbeddedView(t){const e=t.queries;if(null!==e){const n=null!==t.contentQueries?t.contentQueries[0]:e.length,r=[];for(let t=0;t0)r.push(o[t/2]);else{const s=i[t+1],o=e[-n];for(let t=Vt;t{class t{constructor(t){this.appInits=t,this.resolve=Po,this.reject=Po,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Pt(Xa,8))},t.\u0275prov=w({token:t,factory:t.\u0275fac}),t})();const tc=new j("AppId"),ec={provide:tc,useFactory:function(){return`${nc()}${nc()}${nc()}`},deps:[]};function nc(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const rc=new j("Platform Initializer"),sc=new j("Platform ID"),ic=new j("appBootstrapListener");let oc=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=w({token:t,factory:t.\u0275fac}),t})();const ac=new j("LocaleId"),cc=new j("DefaultCurrencyCode");class uc{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const lc=function(t){return new ja(t)},hc=lc,dc=function(t){return Promise.resolve(lc(t))},pc=function(t){const e=lc(t),n=Or(bt(t).declarations).reduce((t,e)=>{const n=mt(e);return n&&t.push(new Ea(n)),t},[]);return new uc(e,n)},fc=pc,gc=function(t){return Promise.resolve(pc(t))};let mc=(()=>{class t{constructor(){this.compileModuleSync=hc,this.compileModuleAsync=dc,this.compileModuleAndAllComponentsSync=fc,this.compileModuleAndAllComponentsAsync=gc}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=w({token:t,factory:t.\u0275fac}),t})();const bc=(()=>Promise.resolve(0))();function yc(t){"undefined"==typeof Zone?bc.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vc{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Na(!1),this.onMicrotaskEmpty=new Na(!1),this.onStable=new Na(!1),this.onError=new Na(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=L.requestAnimationFrame,e=L.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(L,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Oc(t),Cc(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Oc(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,i,o,a)=>{try{return Sc(t),n.invokeTask(s,i,o,a)}finally{e&&"eventTask"===i.type&&e(),xc(t)}},onInvoke:(e,n,r,s,i,o,a)=>{try{return Sc(t),e.invoke(r,s,i,o,a)}finally{xc(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Oc(t),Cc(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vc.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vc.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,i=s.scheduleEventTask("NgZoneEvent: "+r,t,wc,_c,_c);try{return s.runTask(i,e,n)}finally{s.cancelTask(i)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function _c(){}const wc={};function Cc(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Oc(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function Sc(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function xc(t){t._nesting--,Cc(t)}class Ec{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Na,this.onMicrotaskEmpty=new Na,this.onStable=new Na,this.onError=new Na}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let Tc=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vc.assertNotInAngularZone(),yc(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())yc(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Pt(vc))},t.\u0275prov=w({token:t,factory:t.\u0275fac}),t})(),kc=(()=>{class t{constructor(){this._applications=new Map,Rc.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Rc.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=w({token:t,factory:t.\u0275fac}),t})();class Ac{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}function jc(t){Rc=t}let Pc,Rc=new Ac;const Ic=new j("AllowMultipleToken");class Dc{constructor(t,e){this.name=t,this.token=e}}function Nc(t,e,n=[]){const r="Platform: "+e,s=new j(r);return(e=[])=>{let i=Vc();if(!i||i.injector.get(Ic,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:ni,useValue:"platform"});!function(t){if(Pc&&!Pc.destroyed&&!Pc.injector.get(Ic,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Pc=t.get(Lc);const e=t.get(rc,null);e&&e.forEach(t=>t())}(mi.create({providers:t,name:r}))}return function(t){const e=Vc();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}(s)}}function Vc(){return Pc&&!Pc.destroyed?Pc:null}let Lc=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new Ec:("zone.js"===t?void 0:t)||new vc({enableLongStackTrace:Qe(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vc,useValue:n}];return n.run(()=>{const e=mi.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),i=s.injector.get(_r,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Hc(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{i.handleError(t)}})),function(t,e,n){try{const r=n();return $i(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(i,n,()=>{const t=s.injector.get(Ya);return t.runInitializers(),t.donePromise.then(()=>(vo(s.injector.get(ac,bo)||bo),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Mc({},e);return function(t,e,n){const r=new ja(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Uc);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${b(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Pt(mi))},t.\u0275prov=w({token:t,factory:t.\u0275fac}),t})();function Mc(t,e){return Array.isArray(e)?e.reduce(Mc,t):Object.assign(Object.assign({},t),e)}let Uc=(()=>{class t{constructor(t,e,n,r,s,l){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=l,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Qe(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const h=new i.a(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),d=new i.a(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vc.assertNotInAngularZone(),yc(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vc.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=Object(o.a)(h,d.pipe(t=>Object(c.a)()(Object(a.a)(u)(t))))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ko?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(pa),s=n.create(mi.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const i=s.injector.get(Tc,null);return i&&s.injector.get(kc).registerApplication(s.location.nativeElement,i),this._loadComponent(s),Qe()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Hc(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(ic,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Hc(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Pt(vc),Pt(oc),Pt(mi),Pt(_r),Pt(jo),Pt(Ya))},t.\u0275prov=w({token:t,factory:t.\u0275fac}),t})();function Hc(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class Fc{}class $c{}const qc={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"};let zc=(()=>{class t{constructor(t,e){this._compiler=t,this._config=e||qc}load(t){return this.loadAndCompile(t)}loadAndCompile(t){let[e,r]=t.split("#");return void 0===r&&(r="default"),n("zn8P")(e).then(t=>t[r]).then(t=>Bc(t,e,r)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,r]=t.split("#"),s="NgFactory";return void 0===r&&(r="default",s=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[r+s]).then(t=>Bc(t,e,r))}}return t.\u0275fac=function(e){return new(e||t)(Pt(mc),Pt($c,8))},t.\u0275prov=w({token:t,factory:t.\u0275fac}),t})();function Bc(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}const Kc=function(t){return null},Wc=Nc(null,"core",[{provide:sc,useValue:"unknown"},{provide:Lc,deps:[mi]},{provide:kc,deps:[]},{provide:oc,deps:[]}]),Jc=[{provide:Uc,useClass:Uc,deps:[vc,oc,mi,_r,jo,Ya]},{provide:xa,deps:[vc],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ya,useClass:Ya,deps:[[new f,Xa]]},{provide:mc,useClass:mc,deps:[]},ec,{provide:Qo,useFactory:function(){return oa},deps:[]},{provide:Xo,useFactory:function(){return aa},deps:[]},{provide:ac,useFactory:function(t){return vo(t=t||"undefined"!=typeof $localize&&$localize.locale||bo),t},deps:[[new p(ac),new f,new m]]},{provide:cc,useValue:"USD"}];let Gc=(()=>{class t{constructor(t){}}return t.\u0275mod=ht({type:t}),t.\u0275inj=C({factory:function(e){return new(e||t)(Pt(Uc))},providers:Jc}),t})()},gRHU:function(t,e,n){"use strict";n.d(e,"a",function(){return i});var r=n("2fFW"),s=n("NJ4a");const i={closed:!0,next(t){},error(t){if(r.a.useDeprecatedSynchronousErrorHandling)throw t;Object(s.a)(t)},complete(){}}},hO0c:function(t,e,n){"use strict";n.d(e,"a",function(){return i});var r=n("fXoL"),s=n("DZdm");let i=(()=>{class t{constructor(t){this.datasource=t}authenticate(t,e){return this.datasource.authenticate(t,e)}get authenticated(){return null!=this.datasource.auth_token}clear(){this.datasource.auth_token=null}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(s.a))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})()},"hf/X":function(t,e,n){"use strict";n.d(e,"a",function(){return i});var r=n("fXoL"),s=n("DZdm");let i=(()=>{class t{constructor(t){this.dataSource=t,this.orders=[],this.loaded=!1}loadOrders(){this.loaded=!0,this.dataSource.getOrders().subscribe(t=>this.orders=t)}getOrders(){return this.loaded||this.loadOrders(),this.orders}saveOrder(t){return this.dataSource.saveOrder(t)}updateOrder(t){this.dataSource.updateOrder(t).subscribe(t=>{this.orders.splice(this.orders.findIndex(e=>e.id==t.id),1,t)})}deleteOrder(t){this.dataSource.deleteOrder(t).subscribe(e=>{this.orders.splice(this.orders.findIndex(e=>t==e.id),1)})}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(s.a))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})()},jU2X:function(t,e,n){"use strict";n.d(e,"a",function(){return i});var r=n("fXoL"),s=n("DZdm");let i=(()=>{class t{constructor(t){this.dataSource=t,this.products=[],this.categories=[],t.getProducts().subscribe(t=>{this.products=t,this.categories=t.map(t=>t.category).filter((t,e,n)=>n.indexOf(t)==e).sort()})}getProducts(t=null){return this.products.filter(e=>null==t||t==e.category)}getProduct(t){return this.products.find(e=>e.id==t)}getCategories(){return this.categories}saveProduct(t){null==t.id||0==t.id?this.dataSource.saveProduct(t).subscribe(t=>this.products.push(t)):this.dataSource.updateProduct(t).subscribe(e=>{this.products.splice(this.products.findIndex(e=>e.id==t.id),1,t)})}deleteProduct(t){this.dataSource.deleteProduct(t).subscribe(e=>{this.products.splice(this.products.findIndex(e=>e.id==t),1)})}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(s.a))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})()},jZKg:function(t,e,n){"use strict";n.d(e,"a",function(){return i});var r=n("HDdC"),s=n("quSY");function i(t,e){return new r.a(n=>{const r=new s.a;let i=0;return r.add(e.schedule(function(){i!==t.length?(n.next(t[i++]),n.closed||r.add(this.schedule())):n.complete()})),r})}},kJWO:function(t,e,n){"use strict";n.d(e,"a",function(){return r});const r=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")()},lJxs:function(t,e,n){"use strict";n.d(e,"a",function(){return s});var r=n("7o/Q");function s(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new i(t,e))}}class i{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new o(t,this.project,this.thisArg))}}class o extends r.a{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}},n6bG:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.d(e,"a",function(){return r})},ngJS:function(t,e,n){"use strict";n.d(e,"a",function(){return r});const r=t=>e=>{for(let n=0,r=t.length;n{const t=a.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class u extends r.b{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function l(t,e){return function(n){let r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new h(r,e));const s=Object.create(n,c);return s.source=n,s.subjectFactory=r,s}}class h{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,r=this.subjectFactory(),s=n(r).subscribe(t);return s.add(e.subscribe(r)),s}}},ofXK:function(t,e,n){"use strict";n.d(e,"a",function(){return _}),n.d(e,"b",function(){return K}),n.d(e,"c",function(){return B}),n.d(e,"d",function(){return c}),n.d(e,"e",function(){return C}),n.d(e,"f",function(){return h}),n.d(e,"g",function(){return O}),n.d(e,"h",function(){return y}),n.d(e,"i",function(){return H}),n.d(e,"j",function(){return $}),n.d(e,"k",function(){return w}),n.d(e,"l",function(){return u}),n.d(e,"m",function(){return G}),n.d(e,"n",function(){return J}),n.d(e,"o",function(){return a}),n.d(e,"p",function(){return W}),n.d(e,"q",function(){return i}),n.d(e,"r",function(){return M}),n.d(e,"s",function(){return o});var r=n("fXoL");let s=null;function i(){return s}function o(t){s||(s=t)}class a{}const c=new r.q("DocumentToken");let u=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Object(r.Db)({factory:l,token:t,providedIn:"platform"}),t})();function l(){return Object(r.Ob)(d)}const h=new r.q("Location Initialized");let d=(()=>{class t extends u{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=i().getLocation(),this._history=i().getHistory()}getBaseHrefFromDOM(){return i().getBaseHref(this._doc)}onPopState(t){i().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){i().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){p()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){p()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(c))},t.\u0275prov=Object(r.Db)({factory:f,token:t,providedIn:"platform"}),t})();function p(){return!!window.history.pushState}function f(){return new d(Object(r.Ob)(c))}function g(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}function m(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}function b(t){return t&&"?"!==t[0]?"?"+t:t}let y=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Object(r.Db)({factory:v,token:t,providedIn:"root"}),t})();function v(t){const e=Object(r.Ob)(c).location;return new w(Object(r.Ob)(u),e&&e.origin||"")}const _=new r.q("appBaseHref");let w=(()=>{class t extends y{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return g(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+b(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,r){const s=this.prepareExternalUrl(n+b(r));this._platformLocation.pushState(t,e,s)}replaceState(t,e,n,r){const s=this.prepareExternalUrl(n+b(r));this._platformLocation.replaceState(t,e,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(u),r.Ob(_,8))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),C=(()=>{class t extends y{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=g(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,r){let s=this.prepareExternalUrl(n+b(r));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.pushState(t,e,s)}replaceState(t,e,n,r){let s=this.prepareExternalUrl(n+b(r));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(u),r.Ob(_,8))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),O=(()=>{class t{constructor(t,e){this._subject=new r.n,this._urlChangeListeners=[],this._platformStrategy=t;const n=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=m(x(n)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(t,e=""){return this.path()==this.normalize(t+b(e))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,x(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(t,e="",n=null){this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+b(e)),n)}replaceState(t,e="",n=null){this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+b(e)),n)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)}))}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(y),r.Ob(u))},t.normalizeQueryParams=b,t.joinWithSlash=g,t.stripTrailingSlash=m,t.\u0275prov=Object(r.Db)({factory:S,token:t,providedIn:"root"}),t})();function S(){return new O(Object(r.Ob)(y),Object(r.Ob)(u))}function x(t){return t.replace(/\/index.html$/,"")}const E={ADP:[void 0,void 0,0],AFN:[void 0,void 0,0],ALL:[void 0,void 0,0],AMD:[void 0,void 0,2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"\u09f3"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,"\u0440.",2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN\xa5","\xa5"],COP:[void 0,"$",2],CRC:[void 0,"\u20a1",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"K\u010d",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E\xa3"],ESP:[void 0,"\u20a7",0],EUR:["\u20ac"],FJD:[void 0,"$"],FKP:[void 0,"\xa3"],GBP:["\xa3"],GEL:[void 0,"\u20be"],GIP:[void 0,"\xa3"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["\u20aa"],INR:["\u20b9"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["\xa5",void 0,0],KHR:[void 0,"\u17db"],KMF:[void 0,"CF",0],KPW:[void 0,"\u20a9",0],KRW:["\u20a9",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"\u20b8"],LAK:[void 0,"\u20ad",0],LBP:[void 0,"L\xa3",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"\u20ae",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"\u20a6"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:[void 0,"\u20b1"],PKR:[void 0,"Rs",2],PLN:[void 0,"z\u0142"],PYG:[void 0,"\u20b2",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"\u20bd"],RUR:[void 0,"\u0440."],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"\xa3"],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"\xa3"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"\xa3",0],THB:[void 0,"\u0e3f"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"\u20ba"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"\u20b4"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["\u20ab",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["CFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["\xa4"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]};var T=function(t){return t[t.Decimal=0]="Decimal",t[t.Percent=1]="Percent",t[t.Currency=2]="Currency",t[t.Scientific=3]="Scientific",t}({}),k=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({}),A=function(t){return t[t.Decimal=0]="Decimal",t[t.Group=1]="Group",t[t.List=2]="List",t[t.PercentSign=3]="PercentSign",t[t.PlusSign=4]="PlusSign",t[t.MinusSign=5]="MinusSign",t[t.Exponential=6]="Exponential",t[t.SuperscriptingExponent=7]="SuperscriptingExponent",t[t.PerMille=8]="PerMille",t[t[1/0]=9]="Infinity",t[t.NaN=10]="NaN",t[t.TimeSeparator=11]="TimeSeparator",t[t.CurrencyDecimal=12]="CurrencyDecimal",t[t.CurrencyGroup=13]="CurrencyGroup",t}({});function j(t,e){const n=Object(r.hb)(t),s=n[r.Y.NumberSymbols][e];if(void 0===s){if(e===A.CurrencyDecimal)return n[r.Y.NumberSymbols][A.Decimal];if(e===A.CurrencyGroup)return n[r.Y.NumberSymbols][A.Group]}return s}const P=r.kb,R=/^(\d+)?\.((\d+)(-(\d+))?)?$/,I=".",D="0";function N(t){const e=parseInt(t);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+t);return e}class V{}let L=(()=>{class t extends V{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(P(e||this.locale)(t)){case k.Zero:return"zero";case k.One:return"one";case k.Two:return"two";case k.Few:return"few";case k.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(r.u))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();function M(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}class U{constructor(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let H=(()=>{class t{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){Object(r.T)()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. See https://angular.io/api/common/NgForOf#change-propagation for more information.`),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,r)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new U(null,this._ngForOf,-1,-1),null===r?void 0:r),s=new F(t,n);e.push(s)}else if(null==r)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const s=this._viewContainer.get(n);this._viewContainer.move(s,r);const i=new F(t,s);e.push(i)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.O),r.Hb(r.K),r.Hb(r.s))},t.\u0275dir=r.Cb({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class F{constructor(t,e){this.record=t,this.view=e}}let $=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new q,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){z("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){z("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.O),r.Hb(r.K))},t.\u0275dir=r.Cb({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class q{constructor(){this.$implicit=null,this.ngIf=null}}function z(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${Object(r.sb)(e)}'.`)}let B=(()=>{class t{constructor(t,e="USD"){this._locale=t,this._defaultCurrencyCode=e}transform(e,n,s="symbol",i,o){if(!function(t){return!(null==t||""===t||t!=t)}(e))return null;o=o||this._locale,"boolean"==typeof s&&(console&&console.warn&&console.warn('Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".'),s=s?"symbol":"code");let a=n||this._defaultCurrencyCode;"code"!==s&&(a="symbol"===s||"symbol-narrow"===s?function(t,e,n="en"){const s=function(t){return Object(r.hb)(t)[r.Y.Currencies]}(n)[t]||E[t]||[],i=s[1];return"narrow"===e&&"string"==typeof i?i:s[0]||t}(a,"symbol"===s?"wide":"narrow",o):s);try{return function(t,e,n,s,i){const o=function(t,e="-"){const n={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},r=t.split(";"),s=r[0],i=r[1],o=-1!==s.indexOf(I)?s.split(I):[s.substring(0,s.lastIndexOf(D)+1),s.substring(s.lastIndexOf(D)+1)],a=o[0],c=o[1]||"";n.posPre=a.substr(0,a.indexOf("#"));for(let l=0;l-1&&(o=o.replace(I,"")),(r=o.search(/e/i))>0?(n<0&&(n=r),n+=+o.slice(r+1),o=o.substring(0,r)):n<0&&(n=o.length),r=0;o.charAt(r)===D;r++);if(r===(i=o.length))e=[0],n=1;else{for(i--;o.charAt(i)===D;)i--;for(n-=r,e=[],s=0;r<=i;r++,s++)e[s]=Number(o.charAt(r))}return n>22&&(e=e.splice(0,21),a=n-1,n=1),{digits:e,exponent:a,integerLen:n}}(t);o&&(u=function(t){if(0===t.digits[0])return t;const e=t.digits.length-t.integerLen;return t.exponent?t.exponent+=2:(0===e?t.digits.push(0,0):1===e&&t.digits.push(0),t.integerLen+=2),t}(u));let l=e.minInt,h=e.minFrac,d=e.maxFrac;if(i){const t=i.match(R);if(null===t)throw new Error(i+" is not a valid digit info");const e=t[1],n=t[3],r=t[5];null!=e&&(l=N(e)),null!=n&&(h=N(n)),null!=r?d=N(r):null!=n&&h>d&&(d=h)}!function(t,e,n){if(e>n)throw new Error(`The minimum number of digits after fraction (${e}) is higher than the maximum (${n}).`);let r=t.digits,s=r.length-t.integerLen;const i=Math.min(Math.max(e,s),n);let o=i+t.integerLen,a=r[o];if(o>0){r.splice(Math.max(t.integerLen,o));for(let t=o;t=5)if(o-1<0){for(let e=0;e>o;e--)r.unshift(0),t.integerLen++;r.unshift(1),t.integerLen++}else r[o-1]++;for(;s=u?r.pop():c=!1),e>=10?1:0},0);l&&(r.unshift(l),t.integerLen++)}(u,h,d);let p=u.digits,f=u.integerLen;const g=u.exponent;let m=[];for(c=p.every(t=>!t);f0?m=p.splice(f,p.length):(m=p,p=[0]);const b=[];for(p.length>=e.lgSize&&b.unshift(p.splice(-e.lgSize,p.length).join(""));p.length>e.gSize;)b.unshift(p.splice(-e.gSize,p.length).join(""));p.length&&b.unshift(p.join("")),a=b.join(j(n,r)),m.length&&(a+=j(n,s)+m.join("")),g&&(a+=j(n,A.Exponential)+"+"+g)}else a=j(n,A.Infinity);return a=t<0&&!c?e.negPre+a+e.negSuf:e.posPre+a+e.posSuf,a}(t,o,e,A.CurrencyGroup,A.CurrencyDecimal,i).replace("\xa4",n).replace("\xa4","").trim()}(function(t){if("string"==typeof t&&!isNaN(Number(t)-parseFloat(t)))return Number(t);if("number"!=typeof t)throw new Error(t+" is not a number");return t}(e),o,a,n,i)}catch(c){throw function(t,e){return Error(`InvalidPipeArgument: '${e}' for pipe '${Object(r.sb)(t)}'`)}(t,c.message)}}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(r.u),r.Hb(r.k))},t.\u0275pipe=r.Gb({name:"currency",type:t,pure:!0}),t})(),K=(()=>{class t{}return t.\u0275mod=r.Fb({type:t}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)},providers:[{provide:V,useClass:L}]}),t})();const W="browser";function J(t){return t===W}let G=(()=>{class t{}return t.\u0275prov=Object(r.Db)({token:t,providedIn:"root",factory:()=>new Z(Object(r.Ob)(c),window,Object(r.Ob)(r.m))}),t})();class Z{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=()=>[0,0]}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportsScrolling()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportsScrolling()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportsScrolling()){const e=this.document.getElementById(t)||this.document.getElementsByName(t)[0];e&&this.scrollToElement(e)}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,r=e.top+this.window.pageYOffset,s=this.offset();this.window.scrollTo(n-s[0],r-s[1])}supportScrollRestoration(){try{if(!this.window||!this.window.scrollTo)return!1;const t=Q(this.window.history)||Q(Object.getPrototypeOf(this.window.history));return!(!t||!t.writable&&!t.set)}catch(t){return!1}}supportsScrolling(){try{return!!this.window.scrollTo}catch(t){return!1}}}function Q(t){return Object.getOwnPropertyDescriptor(t,"scrollRestoration")}},pLZG:function(t,e,n){"use strict";n.d(e,"a",function(){return s});var r=n("7o/Q");function s(t,e){return function(n){return n.lift(new i(t,e))}}class i{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg))}}class o extends r.a{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}},quSY:function(t,e,n){"use strict";n.d(e,"a",function(){return a});var r=n("DH7j"),s=n("XoHu"),i=n("n6bG");const o=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let a=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:a,_unsubscribe:u,_subscriptions:l}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof o?e.errors:e),[])}},"tk/3":function(t,e,n){"use strict";n.d(e,"a",function(){return E}),n.d(e,"b",function(){return F}),n.d(e,"c",function(){return d});var r=n("fXoL"),s=n("LRne"),i=n("HDdC"),o=n("bOdf"),a=n("pLZG"),c=n("lJxs"),u=n("ofXK");class l{}class h{}class d{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),r=n.toLowerCase(),s=t.slice(e+1).trim();this.maybeSetNormalizedName(n,r),this.headers.has(r)?this.headers.get(r).push(s):this.headers.set(r,[s])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const r=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(r,n),this.maybeSetNormalizedName(e,r))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof d?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new d;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof d?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const r=("a"===t.op?this.headers.get(e):void 0)||[];r.push(...n),this.headers.set(e,r);break;case"d":const s=t.value;if(s){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===s.indexOf(t)),0===t.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class p{encodeKey(t){return f(t)}encodeValue(t){return f(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function f(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class g{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new p,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const r=t.indexOf("="),[s,i]=-1==r?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,r)),e.decodeValue(t.slice(r+1))],o=n.get(s)||[];o.push(i),n.set(s,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const e=new g({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function m(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function b(t){return"undefined"!=typeof Blob&&t instanceof Blob}function y(t){return"undefined"!=typeof FormData&&t instanceof FormData}class v{constructor(t,e,n,r){let s;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,s=r):s=n,s&&(this.reportProgress=!!s.reportProgress,this.withCredentials=!!s.withCredentials,s.responseType&&(this.responseType=s.responseType),s.headers&&(this.headers=s.headers),s.params&&(this.params=s.params)),this.headers||(this.headers=new d),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),a)),t.setParams&&(c=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),c)),new v(e,n,s,{params:c,headers:a,reportProgress:o,responseType:r,withCredentials:i})}}var _=function(t){return t[t.Sent=0]="Sent",t[t.UploadProgress=1]="UploadProgress",t[t.ResponseHeader=2]="ResponseHeader",t[t.DownloadProgress=3]="DownloadProgress",t[t.Response=4]="Response",t[t.User=5]="User",t}({});class w{constructor(t,e=200,n="OK"){this.headers=t.headers||new d,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class C extends w{constructor(t={}){super(t),this.type=_.ResponseHeader}clone(t={}){return new C({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class O extends w{constructor(t={}){super(t),this.type=_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new O({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class S extends w{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?"Http failure during parsing for "+(t.url||"(unknown url)"):`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function x(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let E=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let r;if(t instanceof v)r=t;else{let s=void 0;s=n.headers instanceof d?n.headers:new d(n.headers);let i=void 0;n.params&&(i=n.params instanceof g?n.params:new g({fromObject:n.params})),r=new v(t,e,void 0!==n.body?n.body:null,{headers:s,params:i,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const i=Object(s.a)(r).pipe(Object(o.a)(t=>this.handler.handle(t)));if(t instanceof v||"events"===n.observe)return i;const u=i.pipe(Object(a.a)(t=>t instanceof O));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return u.pipe(Object(c.a)(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return u.pipe(Object(c.a)(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return u.pipe(Object(c.a)(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return u.pipe(Object(c.a)(t=>t.body))}case"response":return u;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new g).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,x(n,e))}post(t,e,n={}){return this.request("POST",t,x(n,e))}put(t,e,n={}){return this.request("PUT",t,x(n,e))}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(l))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();class T{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const k=new r.q("HTTP_INTERCEPTORS");let A=(()=>{class t{intercept(t,e){return e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();const j=/^\)\]\}',?\n/;class P{}let R=(()=>{class t{constructor(){}build(){return new XMLHttpRequest}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),I=(()=>{class t{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new i.a(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const r=t.serializeBody();let s=null;const i=()=>{if(null!==s)return s;const e=1223===n.status?204:n.status,r=n.statusText||"OK",i=new d(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return s=new C({headers:i,status:e,statusText:r,url:o}),s},o=()=>{let{headers:r,status:s,statusText:o,url:a}=i(),c=null;204!==s&&(c=void 0===n.response?n.responseText:n.response),0===s&&(s=c?200:0);let u=s>=200&&s<300;if("json"===t.responseType&&"string"==typeof c){const t=c;c=c.replace(j,"");try{c=""!==c?JSON.parse(c):null}catch(l){c=t,u&&(u=!1,c={error:l,text:c})}}u?(e.next(new O({body:c,headers:r,status:s,statusText:o,url:a||void 0})),e.complete()):e.error(new S({error:c,headers:r,status:s,statusText:o,url:a||void 0}))},a=t=>{const{url:r}=i(),s=new S({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:r||void 0});e.error(s)};let c=!1;const u=r=>{c||(e.next(i()),c=!0);let s={type:_.DownloadProgress,loaded:r.loaded};r.lengthComputable&&(s.total=r.total),"text"===t.responseType&&n.responseText&&(s.partialText=n.responseText),e.next(s)},l=t=>{let n={type:_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",a),t.reportProgress&&(n.addEventListener("progress",u),null!==r&&n.upload&&n.upload.addEventListener("progress",l)),n.send(r),e.next({type:_.Sent}),()=>{n.removeEventListener("error",a),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",u),null!==r&&n.upload&&n.upload.removeEventListener("progress",l)),n.readyState!==n.DONE&&n.abort()}})}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(P))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();const D=new r.q("XSRF_COOKIE_NAME"),N=new r.q("XSRF_HEADER_NAME");class V{}let L=(()=>{class t{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Object(u.r)(t,this.cookieName),this.lastCookieString=t),this.lastToken}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(u.d),r.Ob(r.B),r.Ob(D))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),M=(()=>{class t{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(V),r.Ob(N))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),U=(()=>{class t{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(k,[]);this.chain=t.reduceRight((t,e)=>new T(t,e),this.backend)}return this.chain.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(h),r.Ob(r.r))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),H=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:M,useClass:A}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:D,useValue:e.cookieName}:[],e.headerName?{provide:N,useValue:e.headerName}:[]]}}}return t.\u0275mod=r.Fb({type:t}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)},providers:[M,{provide:k,useExisting:M,multi:!0},{provide:V,useClass:L},{provide:D,useValue:"XSRF-TOKEN"},{provide:N,useValue:"X-XSRF-TOKEN"}]}),t})(),F=(()=>{class t{}return t.\u0275mod=r.Fb({type:t}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)},providers:[E,{provide:l,useClass:U},I,{provide:h,useExisting:I},R,{provide:P,useExisting:R}],imports:[[H.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),t})()},tyNb:function(t,e,n){"use strict";n.d(e,"a",function(){return ue}),n.d(e,"b",function(){return An}),n.d(e,"c",function(){return jn}),n.d(e,"d",function(){return In}),n.d(e,"e",function(){return zn}),n.d(e,"f",function(){return Dn});var r=n("ofXK"),s=n("fXoL"),i=n("LRne"),o=n("Cfvw"),a=n("XNiG"),c=n("9ppp");class u extends a.a{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new c.a;return this._value}next(t){super.next(this._value=t)}}var l=n("z+Ro"),h=n("DH7j"),d=n("7o/Q");class p extends d.a{notifyNext(t,e,n,r,s){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}class f extends d.a{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}var g=n("SeVD"),m=n("HDdC");function b(t,e,n,r,s=new f(t,n,r)){if(!s.closed)return e instanceof m.a?e.subscribe(s):Object(g.a)(e)(s)}var y=n("yCtX");const v={};class _{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new w(t,this.resultSelector))}}class w extends p{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(v),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{function t(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}return t.prototype=Object.create(Error.prototype),t})();var O=n("NXyV"),S=n("EY2u"),x=n("lJxs"),E=n("0EUg"),T=n("pLZG"),k=n("4I5i");function A(t){return function(e){return 0===t?Object(S.b)():e.lift(new j(t))}}class j{constructor(t){if(this.total=t,this.total<0)throw new k.a}call(t,e){return e.subscribe(new P(t,this.total))}}class P extends d.a{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,r=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,r=this.ring;for(let s=0;se.lift(new I(t))}class I{constructor(t){this.errorFactory=t}call(t,e){return e.subscribe(new D(t,this.errorFactory))}}class D extends d.a{constructor(t,e){super(t),this.errorFactory=e,this.hasValue=!1}_next(t){this.hasValue=!0,this.destination.next(t)}_complete(){if(this.hasValue)return this.destination.complete();{let e;try{e=this.errorFactory()}catch(t){e=t}this.destination.error(e)}}}function N(){return new C}function V(t=null){return e=>e.lift(new L(t))}class L{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new M(t,this.defaultValue))}}class M extends d.a{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}var U=n("SpAZ"),H=n("eIep"),F=n("IzEk"),$=n("GyhO");class q{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new z(t,this.accumulator,this.seed,this.hasSeed))}}class z extends d.a{constructor(t,e,n,r){super(t),this.accumulator=e,this._seed=n,this.hasSeed=r,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(r){this.destination.error(r)}this.seed=n,this.destination.next(n)}}var B=n("zx2A");function K(t){return function(e){const n=new W(t),r=e.lift(n);return n.caught=r}}class W{constructor(t){this.selector=t}call(t,e){return e.subscribe(new J(t,this.selector,this.caught))}}class J extends B.b{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const r=new B.a(this);this.add(r);const s=Object(B.c)(n,r);s!==r&&this.add(s)}}}var G=n("bOdf");function Z(t,e){const n=arguments.length>=2;return r=>r.pipe(t?Object(T.a)((e,n)=>t(e,n,r)):U.a,Object(F.a)(1),n?V(e):R(()=>new C))}var Q=n("5+tZ"),X=n("vkgz"),Y=n("quSY");class tt{constructor(t){this.callback=t}call(t,e){return e.subscribe(new et(t,this.callback))}}class et extends d.a{constructor(t,e){super(t),this.add(new Y.a(e))}}var nt=n("bHdf");class rt{constructor(t,e){this.id=t,this.url=e}}class st extends rt{constructor(t,e,n="imperative",r=null){super(t,e),this.navigationTrigger=n,this.restoredState=r}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class it extends rt{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class ot extends rt{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class at extends rt{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ct extends rt{constructor(t,e,n,r){super(t,e),this.urlAfterRedirects=n,this.state=r}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ut extends rt{constructor(t,e,n,r){super(t,e),this.urlAfterRedirects=n,this.state=r}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class lt extends rt{constructor(t,e,n,r,s){super(t,e),this.urlAfterRedirects=n,this.state=r,this.shouldActivate=s}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class ht extends rt{constructor(t,e,n,r){super(t,e),this.urlAfterRedirects=n,this.state=r}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class dt extends rt{constructor(t,e,n,r){super(t,e),this.urlAfterRedirects=n,this.state=r}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class pt{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class ft{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class gt{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class mt{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class bt{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class yt{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class vt{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const _t="primary";class wt{constructor(t){this.params=t||{}}has(t){return Object.prototype.hasOwnProperty.call(this.params,t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function Ct(t){return new wt(t)}function Ot(t){const e=Error("NavigationCancelingError: "+t);return e.ngNavigationCancelingError=!0,e}function St(t,e,n){const r=n.path.split("/");if(r.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.lengthr[e]===t)}return t===e}function Tt(t){return Array.prototype.concat.apply([],t)}function kt(t){return t.length>0?t[t.length-1]:null}function At(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function jt(t){return Object(s.ob)(t)?t:Object(s.pb)(t)?Object(o.a)(Promise.resolve(t)):Object(i.a)(t)}function Pt(t,e,n){return n?function(t,e){return xt(t,e)}(t.queryParams,e.queryParams)&&Rt(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>Et(t[n],e[n]))}(t.queryParams,e.queryParams)&&It(t.root,e.root)}function Rt(t,e){if(!Mt(t.segments,e.segments))return!1;if(t.numberOfChildren!==e.numberOfChildren)return!1;for(const n in e.children){if(!t.children[n])return!1;if(!Rt(t.children[n],e.children[n]))return!1}return!0}function It(t,e){return Dt(t,e,e.segments)}function Dt(t,e,n){if(t.segments.length>n.length)return!!Mt(t.segments.slice(0,n.length),n)&&!e.hasChildren();if(t.segments.length===n.length){if(!Mt(t.segments,n))return!1;for(const n in e.children){if(!t.children[n])return!1;if(!It(t.children[n],e.children[n]))return!1}return!0}{const r=n.slice(0,t.segments.length),s=n.slice(t.segments.length);return!!Mt(t.segments,r)&&!!t.children.primary&&Dt(t.children.primary,e,s)}}class Nt{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Ct(this.queryParams)),this._queryParamMap}toString(){return $t.serialize(this)}}class Vt{constructor(t,e){this.segments=t,this.children=e,this.parent=null,At(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return qt(this)}}class Lt{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=Ct(this.parameters)),this._parameterMap}toString(){return Zt(this)}}function Mt(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Ut(t,e){let n=[];return At(t.children,(t,r)=>{r===_t&&(n=n.concat(e(t,r)))}),At(t.children,(t,r)=>{r!==_t&&(n=n.concat(e(t,r)))}),n}class Ht{}class Ft{parse(t){const e=new ee(t);return new Nt(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){return`${"/"+zt(t.root,!0)}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Kt(e)}=${Kt(t)}`).join("&"):`${Kt(e)}=${Kt(n)}`});return e.length?"?"+e.join("&"):""}(t.queryParams)}${"string"==typeof t.fragment?"#"+encodeURI(t.fragment):""}`}}const $t=new Ft;function qt(t){return t.segments.map(t=>Zt(t)).join("/")}function zt(t,e){if(!t.hasChildren())return qt(t);if(e){const e=t.children.primary?zt(t.children.primary,!1):"",n=[];return At(t.children,(t,e)=>{e!==_t&&n.push(`${e}:${zt(t,!1)}`)}),n.length>0?`${e}(${n.join("//")})`:e}{const e=Ut(t,(e,n)=>n===_t?[zt(t.children.primary,!1)]:[`${n}:${zt(e,!1)}`]);return 1===Object.keys(t.children).length&&null!=t.children.primary?`${qt(t)}/${e[0]}`:`${qt(t)}/(${e.join("//")})`}}function Bt(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Kt(t){return Bt(t).replace(/%3B/gi,";")}function Wt(t){return Bt(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Jt(t){return decodeURIComponent(t)}function Gt(t){return Jt(t.replace(/\+/g,"%20"))}function Zt(t){return`${Wt(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Wt(t)}=${Wt(e[t])}`).join("")}`;var e}const Qt=/^[^\/()?;=#]+/;function Xt(t){const e=t.match(Qt);return e?e[0]:""}const Yt=/^[^=?&#]+/,te=/^[^?&#]+/;class ee{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Vt([],{}):new Vt([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n.primary=new Vt(t,e)),n}parseSegment(){const t=Xt(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Lt(Jt(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Xt(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Xt(this.remaining);t&&(n=t,this.capture(n))}t[Jt(e)]=Jt(n)}parseQueryParam(t){const e=function(t){const e=t.match(Yt);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(te);return e?e[0]:""}(this.remaining);t&&(n=t,this.capture(n))}const r=Gt(e),s=Gt(n);if(t.hasOwnProperty(r)){let e=t[r];Array.isArray(e)||(e=[e],t[r]=e),e.push(s)}else t[r]=s}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Xt(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error(`Cannot parse url '${this.url}'`);let s=void 0;n.indexOf(":")>-1?(s=n.substr(0,n.indexOf(":")),this.capture(s),this.capture(":")):t&&(s=_t);const i=this.parseChildren();e[s]=1===Object.keys(i).length?i.primary:new Vt([],i),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class ne{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=re(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=re(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=se(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return se(t,this._root).map(t=>t.value)}}function re(t,e){if(t===e.value)return e;for(const n of e.children){const e=re(t,n);if(e)return e}return null}function se(t,e){if(t===e.value)return[e];for(const n of e.children){const r=se(t,n);if(r.length)return r.unshift(e),r}return[]}class ie{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function oe(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class ae extends ne{constructor(t,e){super(t),this.snapshot=e,pe(this,t)}toString(){return this.snapshot.toString()}}function ce(t,e){const n=function(t,e){const n=new he([],{},{},"",{},_t,e,null,t.root,-1,{});return new de("",new ie(n,[]))}(t,e),r=new u([new Lt("",{})]),s=new u({}),i=new u({}),o=new u({}),a=new u(""),c=new ue(r,s,o,a,i,_t,e,n.root);return c.snapshot=n.root,new ae(new ie(c,[]),n)}class ue{constructor(t,e,n,r,s,i,o,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=s,this.outlet=i,this.component=o,this._futureSnapshot=a}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(Object(x.a)(t=>Ct(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(Object(x.a)(t=>Ct(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function le(t,e="emptyOnly"){const n=t.pathFromRoot;let r=0;if("always"!==e)for(r=n.length-1;r>=1;){const t=n[r],e=n[r-1];if(t.routeConfig&&""===t.routeConfig.path)r--;else{if(e.component)break;r--}}return function(t){return t.reduce((t,e)=>({params:Object.assign(Object.assign({},t.params),e.params),data:Object.assign(Object.assign({},t.data),e.data),resolve:Object.assign(Object.assign({},t.resolve),e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(r))}class he{constructor(t,e,n,r,s,i,o,a,c,u,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=s,this.outlet=i,this.component=o,this.routeConfig=a,this._urlSegment=c,this._lastPathIndex=u,this._resolve=l}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=Ct(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Ct(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class de extends ne{constructor(t,e){super(e),this.url=t,pe(this,e)}toString(){return fe(this._root)}}function pe(t,e){e.value._routerState=t,e.children.forEach(e=>pe(t,e))}function fe(t){const e=t.children.length>0?` { ${t.children.map(fe).join(", ")} } `:"";return`${t.value}${e}`}function ge(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,xt(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),xt(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nxt(t.parameters,r[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||me(t.parent,e.parent))}function be(t,e,n){if(n&&t.shouldReuseRoute(e.value,n.value.snapshot)){const r=n.value;r._futureSnapshot=e.value;const s=function(t,e,n){return e.children.map(e=>{for(const r of n.children)if(t.shouldReuseRoute(e.value,r.value.snapshot))return be(t,e,r);return be(t,e)})}(t,e,n);return new ie(r,s)}{const n=t.retrieve(e.value);if(n){const t=n.route;return ye(e,t),t}{const n=new ue(new u((r=e.value).url),new u(r.params),new u(r.queryParams),new u(r.fragment),new u(r.data),r.outlet,r.component,r),s=e.children.map(e=>be(t,e));return new ie(n,s)}}var r}function ye(t,e){if(t.value.routeConfig!==e.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(t.children.length!==e.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");e.value._futureSnapshot=t.value;for(let n=0;n{i[e]=Array.isArray(t)?t.map(t=>""+t):""+t}),new Nt(n.root===t?e:Ce(n.root,t,e),i,s)}function Ce(t,e,n){const r={};return At(t.children,(t,s)=>{r[s]=t===e?n:Ce(t,e,n)}),new Vt(t.segments,r)}class Oe{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&ve(n[0]))throw new Error("Root segment cannot have matrix parameters");const r=n.find(_e);if(r&&r!==kt(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class Se{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function xe(t,e,n){if(t||(t=new Vt([],{})),0===t.segments.length&&t.hasChildren())return Ee(t,e,n);const r=function(t,e,n){let r=0,s=e;const i={match:!1,pathIndex:0,commandIndex:0};for(;s=n.length)return i;const e=t.segments[s],o=n[r];if(_e(o))break;const a=""+o,c=r0&&void 0===a)break;if(a&&c&&"object"==typeof c&&void 0===c.outlets){if(!je(a,c,e))return i;r+=2}else{if(!je(a,{},e))return i;r++}s++}return{match:!0,pathIndex:s,commandIndex:r}}(t,e,n),s=n.slice(r.commandIndex);if(r.match&&r.pathIndex{null!==n&&(s[r]=xe(t.children[r],e,n))}),At(t.children,(t,e)=>{void 0===r[e]&&(s[e]=t)}),new Vt(t.segments,s)}}function Te(t,e,n){const r=t.segments.slice(0,e);let s=0;for(;s{null!==t&&(e[n]=Te(new Vt([],{}),0,t))}),e}function Ae(t){const e={};return At(t,(t,n)=>e[n]=""+t),e}function je(t,e,n){return t==n.path&&xt(e,n.parameters)}class Pe{constructor(t,e,n,r){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=r}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),ge(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const r=oe(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,r[e],n),delete r[e]}),At(r,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const r=t.value,s=e?e.value:null;if(r===s)if(r.component){const s=n.getContext(r.outlet);s&&this.deactivateChildRoutes(t,e,s.children)}else this.deactivateChildRoutes(t,e,n);else s&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),r=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:r})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const r=oe(t),s=t.value.component?n.children:e;At(r,(t,e)=>this.deactivateRouteAndItsChildren(t,s)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const r=oe(e);t.children.forEach(t=>{this.activateRoutes(t,r[t.value.outlet],n),this.forwardEvent(new yt(t.value.snapshot))}),t.children.length&&this.forwardEvent(new mt(t.value.snapshot))}activateRoutes(t,e,n){const r=t.value,s=e?e.value:null;if(ge(r),r===s)if(r.component){const s=n.getOrCreateContext(r.outlet);this.activateChildRoutes(t,e,s.children)}else this.activateChildRoutes(t,e,n);else if(r.component){const e=n.getOrCreateContext(r.outlet);if(this.routeReuseStrategy.shouldAttach(r.snapshot)){const t=this.routeReuseStrategy.retrieve(r.snapshot);this.routeReuseStrategy.store(r.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Re(t.route)}else{const n=function(t){for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(r.snapshot),s=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=r,e.resolver=s,e.outlet&&e.outlet.activateWith(r,s),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Re(t){ge(t.value),t.children.forEach(Re)}class Ie{constructor(t,e){this.routes=t,this.module=e}}function De(t){return"function"==typeof t}function Ne(t){return t instanceof Nt}const Ve=Symbol("INITIAL_VALUE");function Le(){return Object(H.a)(t=>function(...t){let e=void 0,n=void 0;return Object(l.a)(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&Object(h.a)(t[0])&&(t=t[0]),Object(y.a)(t,n).lift(new _(e))}(...t.map(t=>t.pipe(Object(F.a)(1),function(...t){const e=t[t.length-1];return Object(l.a)(e)?(t.pop(),n=>Object($.a)(t,n,e)):e=>Object($.a)(t,e)}(Ve)))).pipe(function(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new q(t,e,n))}}((t,e)=>{let n=!1;return e.reduce((t,r,s)=>{if(t!==Ve)return t;if(r===Ve&&(n=!0),!n){if(!1===r)return r;if(s===e.length-1||Ne(r))return r}return t},t)},Ve),Object(T.a)(t=>t!==Ve),Object(x.a)(t=>Ne(t)?t:!0===t),Object(F.a)(1)))}let Me=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=s.Bb({type:t,selectors:[["ng-component"]],decls:1,vars:0,template:function(t,e){1&t&&s.Ib(0,"router-outlet")},directives:function(){return[Dn]},encapsulation:2}),t})();function Ue(t,e=""){for(let n=0;ne.error(new ze(t)))}function We(t){return new m.a(e=>e.error(new Be(t)))}function Je(t){return new m.a(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class Ge{constructor(t,e,n,r,i){this.configLoader=e,this.urlSerializer=n,this.urlTree=r,this.config=i,this.allowRedirects=!0,this.ngModule=t.get(s.x)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,_t).pipe(Object(x.a)(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(K(t=>{if(t instanceof Be)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof ze)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,_t).pipe(Object(x.a)(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(K(t=>{if(t instanceof ze)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const r=t.segments.length>0?new Vt([],{[_t]:t}):t;return new Nt(r,e,n)}expandSegmentGroup(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(Object(x.a)(t=>new Vt([],t))):this.expandSegment(t,n,e,n.segments,r,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Object(i.a)({});const n=[],r=[],s={};return At(t,(t,i)=>{const o=e(i,t).pipe(Object(x.a)(t=>s[i]=t));i===_t?n.push(o):r.push(o)}),i.a.apply(null,n.concat(r)).pipe(Object(E.a)(),function(t,e){const n=arguments.length>=2;return r=>r.pipe(t?Object(T.a)((e,n)=>t(e,n,r)):U.a,A(1),n?V(e):R(()=>new C))}(),Object(x.a)(()=>s))}(n.children,(n,r)=>this.expandSegmentGroup(t,e,r,n))}expandSegment(t,e,n,r,s,a){const c=function(t){return t.reduce((t,e)=>{const n=qe(e);return t.has(n)?t.get(n).push(e):t.set(n,[e]),t},new Map)}(n);c.has(s)||c.set(s,[]);const u=n=>Object(o.a)(n).pipe(Object(G.a)(o=>this.expandSegmentAgainstRoute(t,e,n,o,r,s,a).pipe(K(t=>{if(t instanceof ze)return Object(i.a)(null);throw t}))),Z(t=>null!==t),K(t=>{if(t instanceof C||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,r,s))return Object(i.a)(new Vt([],{}));throw new ze(e)}throw t})),l=Array.from(c.entries()).map(([t,e])=>{const n=u(e);return t===s?n:n.pipe(Object(x.a)(()=>null),K(()=>Object(i.a)(null)))});return Object(o.a)(l).pipe(t=>t.lift(new _(void 0)),Z(),Object(x.a)(t=>t.find(t=>null!==t)))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,r,s,i,o){return qe(r)!==i&&""!==r.path?Ke(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,s):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,s,i):Ke(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,r,s,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,s,i)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,r){const s=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?We(s):this.lineralizeSegments(n,s).pipe(Object(Q.a)(n=>{const s=new Vt(n,{});return this.expandSegment(t,s,e,n,r,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,s,i){const{matched:o,consumedSegments:a,lastChild:c,positionalParamSegments:u}=Ze(e,r,s);if(!o)return Ke(e);const l=this.applyRedirectCommands(a,r.redirectTo,u);return r.redirectTo.startsWith("/")?We(l):this.lineralizeSegments(r,l).pipe(Object(Q.a)(r=>this.expandSegment(t,e,n,r.concat(s.slice(c)),i,!1)))}matchSegmentAgainstRoute(t,e,n,r){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(Object(x.a)(t=>(n._loadedConfig=t,new Vt(r,{})))):Object(i.a)(new Vt(r,{}));const{matched:s,consumedSegments:o,lastChild:a}=Ze(e,n,r);if(!s)return Ke(e);const c=r.slice(a);return this.getChildConfig(t,n,r).pipe(Object(Q.a)(t=>{const n=t.module,r=t.routes,{segmentGroup:s,slicedSegments:a}=function(t,e,n,r){return n.length>0&&function(t,e,n){return n.some(n=>Xe(t,e,n)&&qe(n)!==_t)}(t,n,r)?{segmentGroup:Qe(new Vt(e,function(t,e){const n={};n.primary=e;for(const r of t)""===r.path&&qe(r)!==_t&&(n[qe(r)]=new Vt([],{}));return n}(r,new Vt(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return n.some(n=>Xe(t,e,n))}(t,n,r)?{segmentGroup:Qe(new Vt(t.segments,function(t,e,n,r){const s={};for(const i of n)Xe(t,e,i)&&!r[qe(i)]&&(s[qe(i)]=new Vt([],{}));return Object.assign(Object.assign({},r),s)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,o,c,r);return 0===a.length&&s.hasChildren()?this.expandChildren(n,r,s).pipe(Object(x.a)(t=>new Vt(o,t))):0===r.length&&0===a.length?Object(i.a)(new Vt(o,{})):this.expandSegment(n,s,r,a,_t,!0).pipe(Object(x.a)(t=>new Vt(o.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Object(i.a)(new Ie(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Object(i.a)(e._loadedConfig):this.runCanLoadGuards(t.injector,e,n).pipe(Object(Q.a)(n=>n?this.configLoader.load(t.injector,e).pipe(Object(x.a)(t=>(e._loadedConfig=t,t))):function(t){return new m.a(e=>e.error(Ot(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Object(i.a)(new Ie([],t))}runCanLoadGuards(t,e,n){const r=e.canLoad;if(!r||0===r.length)return Object(i.a)(!0);const s=r.map(r=>{const s=t.get(r);let i;if(function(t){return t&&De(t.canLoad)}(s))i=s.canLoad(e,n);else{if(!De(s))throw new Error("Invalid CanLoad guard");i=s(e,n)}return jt(i)});return Object(i.a)(s).pipe(Le(),Object(X.a)(t=>{if(!Ne(t))return;const e=Ot(`Redirecting to "${this.urlSerializer.serialize(t)}"`);throw e.url=t,e}),Object(x.a)(t=>!0===t))}lineralizeSegments(t,e){let n=[],r=e.root;for(;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return Object(i.a)(n);if(r.numberOfChildren>1||!r.children.primary)return Je(t.redirectTo);r=r.children.primary}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,r){const s=this.createSegmentGroup(t,e.root,n,r);return new Nt(s,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return At(t,(t,r)=>{if("string"==typeof t&&t.startsWith(":")){const s=t.substring(1);n[r]=e[s]}else n[r]=t}),n}createSegmentGroup(t,e,n,r){const s=this.createSegments(t,e.segments,n,r);let i={};return At(e.children,(e,s)=>{i[s]=this.createSegmentGroup(t,e,n,r)}),new Vt(s,i)}createSegments(t,e,n,r){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,r):this.findOrReturn(e,n))}findPosParam(t,e,n){const r=n[e.path.substring(1)];if(!r)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return r}findOrReturn(t,e){let n=0;for(const r of e){if(r.path===t.path)return e.splice(n),r;n++}return t}}function Ze(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const r=(e.matcher||St)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Qe(t){if(1===t.numberOfChildren&&t.children.primary){const e=t.children.primary;return new Vt(t.segments.concat(e.segments),e.children)}return t}function Xe(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}class Ye{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class tn{constructor(t,e){this.component=t,this.route=e}}function en(t,e,n){const r=t._root;return rn(r,e?e._root:null,n,[r.value])}function nn(t,e,n){const r=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function rn(t,e,n,r,s={canDeactivateChecks:[],canActivateChecks:[]}){const i=oe(e);return t.children.forEach(t=>{!function(t,e,n,r,s={canDeactivateChecks:[],canActivateChecks:[]}){const i=t.value,o=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(o&&i.routeConfig===o.routeConfig){const c=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Mt(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Mt(t.url,e.url)||!xt(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!me(t,e)||!xt(t.queryParams,e.queryParams);case"paramsChange":default:return!me(t,e)}}(o,i,i.routeConfig.runGuardsAndResolvers);c?s.canActivateChecks.push(new Ye(r)):(i.data=o.data,i._resolvedData=o._resolvedData),rn(t,e,i.component?a?a.children:null:n,r,s),c&&a&&a.outlet&&a.outlet.isActivated&&s.canDeactivateChecks.push(new tn(a.outlet.component,o))}else o&&sn(e,a,s),s.canActivateChecks.push(new Ye(r)),rn(t,null,i.component?a?a.children:null:n,r,s)}(t,i[t.value.outlet],n,r.concat([t.value]),s),delete i[t.value.outlet]}),At(i,(t,e)=>sn(t,n.getContext(e),s)),s}function sn(t,e,n){const r=oe(t),s=t.value;At(r,(t,r)=>{sn(t,s.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new tn(s.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,s))}function on(t,e){return null!==t&&e&&e(new bt(t)),Object(i.a)(!0)}function an(t,e){return null!==t&&e&&e(new gt(t)),Object(i.a)(!0)}function cn(t,e,n){const r=e.routeConfig?e.routeConfig.canActivate:null;if(!r||0===r.length)return Object(i.a)(!0);const s=r.map(r=>Object(O.a)(()=>{const s=nn(r,e,n);let i;if(function(t){return t&&De(t.canActivate)}(s))i=jt(s.canActivate(e,t));else{if(!De(s))throw new Error("Invalid CanActivate guard");i=jt(s(e,t))}return i.pipe(Z())}));return Object(i.a)(s).pipe(Le())}function un(t,e,n){const r=e[e.length-1],s=e.slice(0,e.length-1).reverse().map(t=>function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null}(t)).filter(t=>null!==t).map(e=>Object(O.a)(()=>{const s=e.guards.map(s=>{const i=nn(s,e.node,n);let o;if(function(t){return t&&De(t.canActivateChild)}(i))o=jt(i.canActivateChild(r,t));else{if(!De(i))throw new Error("Invalid CanActivateChild guard");o=jt(i(r,t))}return o.pipe(Z())});return Object(i.a)(s).pipe(Le())}));return Object(i.a)(s).pipe(Le())}class ln{}class hn{constructor(t,e,n,r,s,i){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=r,this.paramsInheritanceStrategy=s,this.relativeLinkResolution=i}recognize(){try{const t=fn(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,e=this.processSegmentGroup(this.config,t,_t),n=new he([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},_t,this.rootComponentType,null,this.urlTree.root,-1,{}),r=new ie(n,e),s=new de(this.url,r);return this.inheritParamsAndData(s._root),Object(i.a)(s)}catch(t){return new m.a(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=le(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Ut(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};t.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),r=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${r}'.`)}e[t.value.outlet]=t.value})}(n),n.sort((t,e)=>t.value.outlet===_t?-1:e.value.outlet===_t?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,r){for(const i of t)try{return this.processSegmentAgainstRoute(i,e,n,r)}catch(s){if(!(s instanceof ln))throw s}if(this.noLeftoversInUrl(e,n,r))return[];throw new ln}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,r){if(t.redirectTo)throw new ln;if((t.outlet||_t)!==r)throw new ln;let s,i=[],o=[];if("**"===t.path){const i=n.length>0?kt(n).parameters:{};s=new he(n,i,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,bn(t),r,t.component,t,dn(e),pn(e)+n.length,yn(t))}else{const a=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new ln;return{consumedSegments:[],lastChild:0,parameters:{}}}const r=(e.matcher||St)(n,t,e);if(!r)throw new ln;const s={};At(r.posParams,(t,e)=>{s[e]=t.path});const i=r.consumed.length>0?Object.assign(Object.assign({},s),r.consumed[r.consumed.length-1].parameters):s;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:i}}(e,t,n);i=a.consumedSegments,o=n.slice(a.lastChild),s=new he(i,a.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,bn(t),r,t.component,t,dn(e),pn(e)+i.length,yn(t))}const a=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:c,slicedSegments:u}=fn(e,i,o,a,this.relativeLinkResolution);if(0===u.length&&c.hasChildren()){const t=this.processChildren(a,c);return[new ie(s,t)]}if(0===a.length&&0===u.length)return[new ie(s,[])];const l=this.processSegment(a,c,u,_t);return[new ie(s,l)]}}function dn(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function pn(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)e=e._sourceSegment,n+=e._segmentIndexShift?e._segmentIndexShift:0;return n-1}function fn(t,e,n,r,s){if(n.length>0&&function(t,e,n){return n.some(n=>gn(t,e,n)&&mn(n)!==_t)}(t,n,r)){const s=new Vt(e,function(t,e,n,r){const s={};s.primary=r,r._sourceSegment=t,r._segmentIndexShift=e.length;for(const i of n)if(""===i.path&&mn(i)!==_t){const n=new Vt([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,s[mn(i)]=n}return s}(t,e,r,new Vt(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return n.some(n=>gn(t,e,n))}(t,n,r)){const i=new Vt(t.segments,function(t,e,n,r,s,i){const o={};for(const a of r)if(gn(t,n,a)&&!s[mn(a)]){const n=new Vt([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===i?t.segments.length:e.length,o[mn(a)]=n}return Object.assign(Object.assign({},s),o)}(t,e,n,r,t.children,s));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}const i=new Vt(t.segments,t.children);return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}function gn(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function mn(t){return t.outlet||_t}function bn(t){return t.data||{}}function yn(t){return t.resolve||{}}function vn(t){return function(e){return e.pipe(Object(H.a)(e=>{const n=t(e);return n?Object(o.a)(n).pipe(Object(x.a)(()=>e)):Object(o.a)([e])}))}}class _n extends class{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}{}const wn=new s.q("ROUTES");class Cn{constructor(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(Object(x.a)(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const r=n.create(t);return new Ie(Tt(r.injector.get(wn)).map($e),r)}))}loadModuleFactory(t){return"string"==typeof t?Object(o.a)(this.loader.load(t)):jt(t()).pipe(Object(Q.a)(t=>t instanceof s.v?Object(i.a)(t):Object(o.a)(this.compiler.compileModuleAsync(t))))}}class On{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new Sn,this.attachRef=null}}class Sn{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new On,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}class xn{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function En(t){throw t}function Tn(t,e,n){return e.parse("/")}function kn(t,e){return Object(i.a)(null)}let An=(()=>{class t{constructor(t,e,n,r,i,o,c,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.lastLocationChangeInfo=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new a.a,this.errorHandler=En,this.malformedUriErrorHandler=Tn,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:kn,afterPreactivation:kn},this.urlHandlingStrategy=new xn,this.routeReuseStrategy=new _n,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="corrected",this.ngModule=i.get(s.x),this.console=i.get(s.W);const h=i.get(s.z);this.isNgZoneEnabled=h instanceof s.z,this.resetConfig(l),this.currentUrlTree=new Nt(new Vt([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new Cn(o,c,t=>this.triggerEvent(new pt(t)),t=>this.triggerEvent(new ft(t))),this.routerState=ce(this.currentUrlTree,this.rootComponentType),this.transitions=new u({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(Object(T.a)(t=>0!==t.id),Object(x.a)(t=>Object.assign(Object.assign({},t),{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Object(H.a)(t=>{let n=!1,r=!1;return Object(i.a)(t).pipe(Object(X.a)(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign(Object.assign({},this.lastSuccessfulNavigation),{previousNavigation:null}):null}}),Object(H.a)(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Object(i.a)(t).pipe(Object(H.a)(t=>{const n=this.transitions.getValue();return e.next(new st(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?S.a:[t]}),Object(H.a)(t=>Promise.resolve(t)),(r=this.ngModule.injector,s=this.configLoader,o=this.urlSerializer,a=this.config,function(t){return t.pipe(Object(H.a)(t=>function(t,e,n,r,s){return new Ge(t,e,n,r,s).apply()}(r,s,o,t.extractedUrl,a).pipe(Object(x.a)(e=>Object.assign(Object.assign({},t),{urlAfterRedirects:e})))))}),Object(X.a)(t=>{this.currentNavigation=Object.assign(Object.assign({},this.currentNavigation),{finalUrl:t.urlAfterRedirects})}),function(t,e,n,r,s){return function(i){return i.pipe(Object(Q.a)(i=>function(t,e,n,r,s="emptyOnly",i="legacy"){return new hn(t,e,n,r,s,i).recognize()}(t,e,i.urlAfterRedirects,n(i.urlAfterRedirects),r,s).pipe(Object(x.a)(t=>Object.assign(Object.assign({},i),{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),Object(X.a)(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),Object(X.a)(t=>{const n=new ct(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));var r,s,o,a;if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:r,source:s,restoredState:o,extras:a}=t,c=new st(n,this.serializeUrl(r),s,o);e.next(c);const u=ce(r,this.rootComponentType).snapshot;return Object(i.a)(Object.assign(Object.assign({},t),{targetSnapshot:u,urlAfterRedirects:r,extras:Object.assign(Object.assign({},a),{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),S.a}),vn(t=>{const{targetSnapshot:e,id:n,extractedUrl:r,rawUrl:s,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:r,rawUrlTree:s,skipLocationChange:!!i,replaceUrl:!!o})}),Object(X.a)(t=>{const e=new ut(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),Object(x.a)(t=>Object.assign(Object.assign({},t),{guards:en(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Object(Q.a)(n=>{const{targetSnapshot:r,currentSnapshot:s,guards:{canActivateChecks:a,canDeactivateChecks:c}}=n;return 0===c.length&&0===a.length?Object(i.a)(Object.assign(Object.assign({},n),{guardsResult:!0})):function(t,e,n,r){return Object(o.a)(t).pipe(Object(Q.a)(t=>function(t,e,n,r,s){const o=e&&e.routeConfig?e.routeConfig.canDeactivate:null;if(!o||0===o.length)return Object(i.a)(!0);const a=o.map(i=>{const o=nn(i,e,s);let a;if(function(t){return t&&De(t.canDeactivate)}(o))a=jt(o.canDeactivate(t,e,n,r));else{if(!De(o))throw new Error("Invalid CanDeactivate guard");a=jt(o(t,e,n,r))}return a.pipe(Z())});return Object(i.a)(a).pipe(Le())}(t.component,t.route,n,e,r)),Z(t=>!0!==t,!0))}(c,r,s,t).pipe(Object(Q.a)(n=>n&&"boolean"==typeof n?function(t,e,n,r){return Object(o.a)(e).pipe(Object(G.a)(e=>Object(o.a)([an(e.route.parent,r),on(e.route,r),un(t,e.path,n),cn(t,e.route,n)]).pipe(Object(E.a)(),Z(t=>!0!==t,!0))),Z(t=>!0!==t,!0))}(r,a,t,e):Object(i.a)(n)),Object(x.a)(t=>Object.assign(Object.assign({},n),{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),Object(X.a)(t=>{if(Ne(t.guardsResult)){const e=Ot(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),Object(X.a)(t=>{const e=new lt(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),Object(T.a)(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new ot(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),vn(t=>{if(t.guards.canActivateChecks.length)return Object(i.a)(t).pipe(Object(X.a)(t=>{const e=new ht(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),Object(H.a)(t=>{let n=!1;return Object(i.a)(t).pipe((r=this.paramsInheritanceStrategy,s=this.ngModule.injector,function(t){return t.pipe(Object(Q.a)(t=>{const{targetSnapshot:e,guards:{canActivateChecks:n}}=t;if(!n.length)return Object(i.a)(t);let a=0;return Object(o.a)(n).pipe(Object(G.a)(t=>function(t,e,n,r){return function(t,e,n,r){const s=Object.keys(t);if(0===s.length)return Object(i.a)({});const a={};return Object(o.a)(s).pipe(Object(Q.a)(s=>function(t,e,n,r){const s=nn(t,e,r);return jt(s.resolve?s.resolve(e,n):s(e,n))}(t[s],e,n,r).pipe(Object(X.a)(t=>{a[s]=t}))),A(1),Object(Q.a)(()=>Object.keys(a).length===s.length?Object(i.a)(a):S.a))}(t._resolve,t,e,r).pipe(Object(x.a)(e=>(t._resolvedData=e,t.data=Object.assign(Object.assign({},t.data),le(t,n).resolve),null)))}(t.route,e,r,s)),Object(X.a)(()=>a++),A(1),Object(Q.a)(e=>a===n.length?Object(i.a)(t):S.a))}))}),Object(X.a)({next:()=>n=!0,complete:()=>{if(!n){const n=new ot(t.id,this.serializeUrl(t.extractedUrl),"At least one route resolver didn't emit any value.");e.next(n),t.resolve(!1)}}}));var r,s}),Object(X.a)(t=>{const e=new dt(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),vn(t=>{const{targetSnapshot:e,id:n,extractedUrl:r,rawUrl:s,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:r,rawUrlTree:s,skipLocationChange:!!i,replaceUrl:!!o})}),Object(x.a)(t=>{const e=function(t,e,n){const r=be(t,e._root,n?n._root:void 0);return new ae(r,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign(Object.assign({},t),{targetRouterState:e})}),Object(X.a)(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),(a=this.rootContexts,c=this.routeReuseStrategy,u=t=>this.triggerEvent(t),Object(x.a)(t=>(new Pe(c,t.targetRouterState,t.currentRouterState,u).activate(a),t))),Object(X.a)({next(){n=!0},complete(){n=!0}}),(s=()=>{if(!n&&!r){this.resetUrlToCurrentUrlTree();const n=new ot(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null},t=>t.lift(new tt(s))),K(n=>{if(r=!0,(s=n)&&s.ngNavigationCancelingError){const r=Ne(n.url);r||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const s=new ot(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(s),r?setTimeout(()=>{const e=this.urlHandlingStrategy.merge(n.url,this.rawUrlTree);return this.scheduleNavigation(e,"imperative",null,{skipLocationChange:t.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy},{resolve:t.resolve,reject:t.reject,promise:t.promise})},0):t.resolve(!1)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const r=new at(t.id,this.serializeUrl(t.extractedUrl),n);e.next(r);try{t.resolve(this.errorHandler(n))}catch(i){t.reject(i)}}var s;return S.a}));var s,a,c,u}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign(Object.assign({},this.getTransition()),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{const e=this.extractLocationChangeInfoFromEvent(t);this.shouldScheduleNavigation(this.lastLocationChangeInfo,e)&&setTimeout(()=>{const{source:t,state:n,urlTree:r}=e,s={replaceUrl:!0};if(n){const t=Object.assign({},n);delete t.navigationId,0!==Object.keys(t).length&&(s.state=t)}this.scheduleNavigation(r,t,n,s)},0),this.lastLocationChangeInfo=e}))}extractLocationChangeInfoFromEvent(t){var e;return{source:"popstate"===t.type?"popstate":"hashchange",urlTree:this.parseUrl(t.url),state:(null===(e=t.state)||void 0===e?void 0:e.navigationId)?t.state:null,transitionId:this.getTransition().id}}shouldScheduleNavigation(t,e){if(!t)return!0;const n=e.urlTree.toString()===t.urlTree.toString();return!(e.transitionId===t.transitionId&&n&&("hashchange"===e.source&&"popstate"===t.source||"popstate"===e.source&&"hashchange"===t.source))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){Ue(t),this.config=t.map($e),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:r,fragment:s,queryParamsHandling:i,preserveFragment:o}=e,a=n||this.routerState.root,c=o?this.currentUrlTree.fragment:s;let u=null;switch(i){case"merge":u=Object.assign(Object.assign({},this.currentUrlTree.queryParams),r);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=r||null}return null!==u&&(u=this.removeEmptyProps(u)),function(t,e,n,r,s){if(0===n.length)return we(e.root,e.root,e,r,s);const i=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new Oe(!0,0,t);let e=0,n=!1;const r=t.reduce((t,r,s)=>{if("object"==typeof r&&null!=r){if(r.outlets){const e={};return At(r.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(r.segmentPath)return[...t,r.segmentPath]}return"string"!=typeof r?[...t,r]:0===s?(r.split("/").forEach((r,s)=>{0==s&&"."===r||(0==s&&""===r?n=!0:".."===r?e++:""!=r&&t.push(r))}),t):[...t,r]},[]);return new Oe(n,e,r)}(n);if(i.toRoot())return we(e.root,new Vt([],{}),e,r,s);const o=function(t,e,n){if(t.isAbsolute)return new Se(e.root,!0,0);if(-1===n.snapshot._lastPathIndex){const t=n.snapshot._urlSegment;return new Se(t,t===e.root,0)}const r=ve(t.commands[0])?0:1;return function(t,e,n){let r=t,s=e,i=n;for(;i>s;){if(i-=s,r=r.parent,!r)throw new Error("Invalid number of '../'");s=r.segments.length}return new Se(r,!1,s-i)}(n.snapshot._urlSegment,n.snapshot._lastPathIndex+r,t.numberOfDoubleDots)}(i,e,t),a=o.processChildren?Ee(o.segmentGroup,o.index,i.commands):xe(o.segmentGroup,o.index,i.commands);return we(o.segmentGroup,a,e,r,s)}(a,this.currentUrlTree,t,u,c)}navigateByUrl(t,e={skipLocationChange:!1}){const n=Ne(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const r=t[n];return null!=r&&(e[n]=r),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new it(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,r,s){const i=this.getTransition(),o="imperative"!==e&&"imperative"===(null==i?void 0:i.source),a=(this.lastSuccessfulId===i.id||this.currentNavigation?i.rawUrl:i.urlAfterRedirects).toString()===t.toString();if(o&&a)return Promise.resolve(!0);let c,u,l;s?(c=s.resolve,u=s.reject,l=s.promise):l=new Promise((t,e)=>{c=t,u=e});const h=++this.navigationId;return this.setTransition({id:h,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:r,resolve:c,reject:u,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,r){const s=this.urlSerializer.serialize(t);r=r||{},this.location.isCurrentPathEqualTo(s)||e?this.location.replaceState(s,"",Object.assign(Object.assign({},r),{navigationId:n})):this.location.go(s,"",Object.assign(Object.assign({},r),{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}return t.\u0275fac=function(e){return new(e||t)(s.Ob(s.M),s.Ob(Ht),s.Ob(Sn),s.Ob(r.g),s.Ob(s.r),s.Ob(s.w),s.Ob(s.i),s.Ob(void 0))},t.\u0275prov=s.Db({token:t,factory:t.\u0275fac}),t})(),jn=(()=>{class t{constructor(t,e,n,r,s){this.router=t,this.route=e,this.commands=[],this.onChanges=new a.a,null==n&&r.setAttribute(s.nativeElement,"tabindex","0")}ngOnChanges(t){this.onChanges.next(this)}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}onClick(){const t={skipLocationChange:Rn(this.skipLocationChange),replaceUrl:Rn(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,t),!0}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:Rn(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(s.Hb(An),s.Hb(ue),s.Pb("tabindex"),s.Hb(s.D),s.Hb(s.l))},t.\u0275dir=s.Cb({type:t,selectors:[["","routerLink","",5,"a",5,"area"]],hostBindings:function(t,e){1&t&&s.Rb("click",function(){return e.onClick()})},inputs:{routerLink:"routerLink",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state"},features:[s.vb]}),t})(),Pn=(()=>{class t{constructor(t,e,n){this.router=t,this.route=e,this.locationStrategy=n,this.commands=[],this.onChanges=new a.a,this.subscription=t.events.subscribe(t=>{t instanceof it&&this.updateTargetUrlAndHref()})}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}ngOnChanges(t){this.updateTargetUrlAndHref(),this.onChanges.next(this)}ngOnDestroy(){this.subscription.unsubscribe()}onClick(t,e,n,r,s){if(0!==t||e||n||r||s)return!0;if("string"==typeof this.target&&"_self"!=this.target)return!0;const i={skipLocationChange:Rn(this.skipLocationChange),replaceUrl:Rn(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,i),!1}updateTargetUrlAndHref(){this.href=this.locationStrategy.prepareExternalUrl(this.router.serializeUrl(this.urlTree))}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:Rn(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(s.Hb(An),s.Hb(ue),s.Hb(r.h))},t.\u0275dir=s.Cb({type:t,selectors:[["a","routerLink",""],["area","routerLink",""]],hostVars:2,hostBindings:function(t,e){1&t&&s.Rb("click",function(t){return e.onClick(t.button,t.ctrlKey,t.shiftKey,t.altKey,t.metaKey)}),2&t&&(s.Nb("href",e.href,s.bc),s.yb("target",e.target))},inputs:{routerLink:"routerLink",target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state"},features:[s.vb]}),t})();function Rn(t){return""===t||!!t}let In=(()=>{class t{constructor(t,e,n,r,s,i){this.router=t,this.element=e,this.renderer=n,this.cdr=r,this.link=s,this.linkWithHref=i,this.classes=[],this.isActive=!1,this.routerLinkActiveOptions={exact:!1},this.routerEventsSubscription=t.events.subscribe(t=>{t instanceof it&&this.update()})}ngAfterContentInit(){Object(o.a)([this.links.changes,this.linksWithHrefs.changes,Object(i.a)(null)]).pipe(Object(nt.a)()).subscribe(t=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){var t;null===(t=this.linkInputChangesSubscription)||void 0===t||t.unsubscribe();const e=[...this.links.toArray(),...this.linksWithHrefs.toArray(),this.link,this.linkWithHref].filter(t=>!!t).map(t=>t.onChanges);this.linkInputChangesSubscription=Object(o.a)(e).pipe(Object(nt.a)()).subscribe(t=>{this.isActive!==this.isLinkActive(this.router)(t)&&this.update()})}set routerLinkActive(t){const e=Array.isArray(t)?t:t.split(" ");this.classes=e.filter(t=>!!t)}ngOnChanges(t){this.update()}ngOnDestroy(){var t;this.routerEventsSubscription.unsubscribe(),null===(t=this.linkInputChangesSubscription)||void 0===t||t.unsubscribe()}update(){this.links&&this.linksWithHrefs&&this.router.navigated&&Promise.resolve().then(()=>{const t=this.hasActiveLinks();this.isActive!==t&&(this.isActive=t,this.cdr.markForCheck(),this.classes.forEach(e=>{t?this.renderer.addClass(this.element.nativeElement,e):this.renderer.removeClass(this.element.nativeElement,e)}))})}isLinkActive(t){return e=>t.isActive(e.urlTree,this.routerLinkActiveOptions.exact)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.linkWithHref&&t(this.linkWithHref)||this.links.some(t)||this.linksWithHrefs.some(t)}}return t.\u0275fac=function(e){return new(e||t)(s.Hb(An),s.Hb(s.l),s.Hb(s.D),s.Hb(s.h),s.Hb(jn,8),s.Hb(Pn,8))},t.\u0275dir=s.Cb({type:t,selectors:[["","routerLinkActive",""]],contentQueries:function(t,e,n){if(1&t&&(s.Ab(n,jn,!0),s.Ab(n,Pn,!0)),2&t){let t;s.Yb(t=s.Sb())&&(e.links=t),s.Yb(t=s.Sb())&&(e.linksWithHrefs=t)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",routerLinkActive:"routerLinkActive"},exportAs:["routerLinkActive"],features:[s.vb]}),t})(),Dn=(()=>{class t{constructor(t,e,n,r,i){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=i,this.activated=null,this._activatedRoute=null,this.activateEvents=new s.n,this.deactivateEvents=new s.n,this.name=r||_t,t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),r=this.parentContexts.getOrCreateContext(this.name).children,s=new Nn(t,r,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,s),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}return t.\u0275fac=function(e){return new(e||t)(s.Hb(Sn),s.Hb(s.O),s.Hb(s.j),s.Pb("name"),s.Hb(s.h))},t.\u0275dir=s.Cb({type:t,selectors:[["router-outlet"]],outputs:{activateEvents:"activate",deactivateEvents:"deactivate"},exportAs:["outlet"]}),t})();class Nn{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===ue?this.route:t===Sn?this.childContexts:this.parent.get(t,e)}}class Vn{}class Ln{preload(t,e){return Object(i.a)(null)}}let Mn=(()=>{class t{constructor(t,e,n,r,s){this.router=t,this.injector=r,this.preloadingStrategy=s,this.loader=new Cn(e,n,e=>t.triggerEvent(new pt(e)),e=>t.triggerEvent(new ft(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(Object(T.a)(t=>t instanceof it),Object(G.a)(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(s.x);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const r of e)if(r.loadChildren&&!r.canLoad&&r._loadedConfig){const t=r._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else r.loadChildren&&!r.canLoad?n.push(this.preloadConfig(t,r)):r.children&&n.push(this.processRoutes(t,r.children));return Object(o.a)(n).pipe(Object(nt.a)(),Object(x.a)(t=>{}))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Object(Q.a)(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}return t.\u0275fac=function(e){return new(e||t)(s.Ob(An),s.Ob(s.w),s.Ob(s.i),s.Ob(s.r),s.Ob(Vn))},t.\u0275prov=s.Db({token:t,factory:t.\u0275fac}),t})(),Un=(()=>{class t{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof st?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof it&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof vt&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new vt(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(s.Ob(An),s.Ob(r.m),s.Ob(void 0))},t.\u0275prov=s.Db({token:t,factory:t.\u0275fac}),t})();const Hn=new s.q("ROUTER_CONFIGURATION"),Fn=new s.q("ROUTER_FORROOT_GUARD"),$n=[r.g,{provide:Ht,useClass:Ft},{provide:An,useFactory:function(t,e,n,s,i,o,a,c={},u,l){const h=new An(null,t,e,n,s,i,o,Tt(a));if(u&&(h.urlHandlingStrategy=u),l&&(h.routeReuseStrategy=l),function(t,e){t.errorHandler&&(e.errorHandler=t.errorHandler),t.malformedUriErrorHandler&&(e.malformedUriErrorHandler=t.malformedUriErrorHandler),t.onSameUrlNavigation&&(e.onSameUrlNavigation=t.onSameUrlNavigation),t.paramsInheritanceStrategy&&(e.paramsInheritanceStrategy=t.paramsInheritanceStrategy),t.relativeLinkResolution&&(e.relativeLinkResolution=t.relativeLinkResolution),t.urlUpdateStrategy&&(e.urlUpdateStrategy=t.urlUpdateStrategy)}(c,h),c.enableTracing){const t=Object(r.q)();h.events.subscribe(e=>{t.logGroup("Router Event: "+e.constructor.name),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return h},deps:[Ht,Sn,r.g,s.r,s.w,s.i,wn,Hn,[class{},new s.A],[class{},new s.A]]},Sn,{provide:ue,useFactory:function(t){return t.routerState.root},deps:[An]},{provide:s.w,useClass:s.J},Mn,Ln,class{preload(t,e){return e().pipe(K(()=>Object(i.a)(null)))}},{provide:Hn,useValue:{enableTracing:!1}}];function qn(){return new s.y("Router",An)}let zn=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[$n,Jn(e),{provide:Fn,useFactory:Wn,deps:[[An,new s.A,new s.I]]},{provide:Hn,useValue:n||{}},{provide:r.h,useFactory:Kn,deps:[r.l,[new s.p(r.a),new s.A],Hn]},{provide:Un,useFactory:Bn,deps:[An,r.m,Hn]},{provide:Vn,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Ln},{provide:s.y,multi:!0,useFactory:qn},[Gn,{provide:s.d,multi:!0,useFactory:Zn,deps:[Gn]},{provide:Xn,useFactory:Qn,deps:[Gn]},{provide:s.b,multi:!0,useExisting:Xn}]]}}static forChild(e){return{ngModule:t,providers:[Jn(e)]}}}return t.\u0275mod=s.Fb({type:t}),t.\u0275inj=s.Eb({factory:function(e){return new(e||t)(s.Ob(Fn,8),s.Ob(An,8))}}),t})();function Bn(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Un(t,e,n)}function Kn(t,e,n={}){return n.useHash?new r.e(t,e):new r.k(t,e)}function Wn(t){return"guarded"}function Jn(t){return[{provide:s.a,multi:!0,useValue:t},{provide:wn,multi:!0,useValue:t}]}let Gn=(()=>{class t{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new a.a}appInitializer(){return this.injector.get(r.f,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(An),r=this.injector.get(Hn);return"disabled"===r.initialNavigation?(n.setUpLocationChangeListener(),t(!0)):"enabled"===r.initialNavigation||"enabledBlocking"===r.initialNavigation?(n.hooks.afterPreactivation=()=>this.initNavigation?Object(i.a)(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone),n.initialNavigation()):t(!0),e})}bootstrapListener(t){const e=this.injector.get(Hn),n=this.injector.get(Mn),r=this.injector.get(Un),i=this.injector.get(An),o=this.injector.get(s.g);t===o.components[0]&&("enabledNonBlocking"!==e.initialNavigation&&void 0!==e.initialNavigation||i.initialNavigation(),n.setUpPreloading(),r.init(),i.resetRootComponentType(o.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}}return t.\u0275fac=function(e){return new(e||t)(s.Ob(s.r))},t.\u0275prov=s.Db({token:t,factory:t.\u0275fac}),t})();function Zn(t){return t.appInitializer.bind(t)}function Qn(t){return t.bootstrapListener.bind(t)}const Xn=new s.q("Router Initializer")},vkgz:function(t,e,n){"use strict";n.d(e,"a",function(){return o});var r=n("7o/Q"),s=n("KqfI"),i=n("n6bG");function o(t,e,n){return function(r){return r.lift(new a(t,e,n))}}class a{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new c(t,this.nextOrObserver,this.error,this.complete))}}class c extends r.a{constructor(t,e,n,r){super(t),this._tapNext=s.a,this._tapError=s.a,this._tapComplete=s.a,this._tapError=n||s.a,this._tapComplete=r||s.a,Object(i.a)(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||s.a,this._tapError=e.error||s.a,this._tapComplete=e.complete||s.a)}_next(t){try{this._tapNext.call(this._context,t)}catch(e){return void this.destination.error(e)}this.destination.next(t)}_error(t){try{this._tapError.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}},"x+ZX":function(t,e,n){"use strict";n.d(e,"a",function(){return s});var r=n("7o/Q");function s(){return function(t){return t.lift(new i(t))}}class i{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new o(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class o extends r.a{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}},yCtX:function(t,e,n){"use strict";n.d(e,"a",function(){return o});var r=n("HDdC"),s=n("ngJS"),i=n("jZKg");function o(t,e){return e?Object(i.a)(t,e):new r.a(Object(s.a)(t))}},"z+Ro":function(t,e,n){"use strict";function r(t){return t&&"function"==typeof t.schedule}n.d(e,"a",function(){return r})},zUnb:function(t,e,n){"use strict";n.r(e);var r=n("fXoL"),s=n("ofXK");class i extends s.o{constructor(){super()}supportsDOMEvents(){return!0}}class o extends i{static makeCurrent(){Object(s.s)(new o)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=c||(c=document.querySelector("base"),c)?c.getAttribute("href"):null;return null==e?null:(n=e,a||(a=document.createElement("a")),a.setAttribute("href",n),"/"===a.pathname.charAt(0)?a.pathname:"/"+a.pathname);var n}resetBaseElement(){c=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return Object(s.r)(document.cookie,t)}}let a,c=null;const u=new r.q("TRANSITION_ID"),l=[{provide:r.d,useFactory:function(t,e,n){return()=>{n.get(r.e).donePromise.then(()=>{const n=Object(s.q)();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[u,s.d,r.r],multi:!0}];class h{static init(){Object(r.V)(new h)}addToWindow(t){r.mb.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},r.mb.getAllAngularTestabilities=()=>t.getAllTestabilities(),r.mb.getAllAngularRootElements=()=>t.getAllRootElements(),r.mb.frameworkStabilizers||(r.mb.frameworkStabilizers=[]),r.mb.frameworkStabilizers.push(t=>{const e=r.mb.getAllAngularTestabilities();let n=e.length,s=!1;const i=function(e){s=s||e,n--,0==n&&t(s)};e.forEach(function(t){t.whenStable(i)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?Object(s.q)().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const d=new r.q("EventManagerPlugins");let p=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),m=(()=>{class t extends g{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>Object(s.q)().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(s.d))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();const b={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/"},y=/%COMP%/g;function v(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let w=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new C(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case r.P.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new O(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case r.P.ShadowDom:return new S(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=v(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(p),r.Ob(m),r.Ob(r.c))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();class C{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(b[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=b[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=b[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&(r.F.DashCase|r.F.Important)?t.style.setProperty(e,n,s&r.F.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&r.F.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,_(n)):this.eventManager.addEventListener(t,e,_(n))}}class O extends C{constructor(t,e,n,r){super(t),this.component=n;const s=v(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(y,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(y,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class S extends C{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=v(r.id,r.styles,[]);for(let i=0;i{class t extends f{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(s.d))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();const E=["alt","control","meta","shift"],T={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},k={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},A={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let j=(()=>{class t extends f{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const i=t.parseEventName(n),o=t.eventCallback(i.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Object(s.q)().onAndCancel(e,i.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let i="";if(E.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),i+=t+".")}),i+=s,0!=n.length||0===s.length)return null;const o={};return o.domEventName=r,o.fullKey=i,o}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&k.hasOwnProperty(e)&&(e=k[e]))}return T[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),E.forEach(r=>{r!=n&&(0,A[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(s.d))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();const P=[{provide:r.B,useValue:s.p},{provide:r.C,useValue:function(){o.makeCurrent(),h.init()},multi:!0},{provide:s.d,useFactory:function(){return Object(r.rb)(document),document},deps:[]}],R=Object(r.Q)(r.U,"browser",P),I=[[],{provide:r.X,useValue:"root"},{provide:r.m,useFactory:function(){return new r.m},deps:[]},{provide:d,useClass:x,multi:!0,deps:[s.d,r.z,r.B]},{provide:d,useClass:j,multi:!0,deps:[s.d]},[],{provide:w,useClass:w,deps:[p,m,r.c]},{provide:r.E,useExisting:w},{provide:g,useExisting:m},{provide:m,useClass:m,deps:[s.d]},{provide:r.L,useClass:r.L,deps:[r.z]},{provide:p,useClass:p,deps:[d,r.z]},[]];let D=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:r.c,useValue:e.appId},{provide:u,useExisting:r.c},l]}}}return t.\u0275mod=r.Fb({type:t}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)(r.Ob(t,12))},providers:I,imports:[s.b,r.f]}),t})();"undefined"!=typeof window&&window;var N=n("tyNb");let V=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=r.Bb({type:t,selectors:[["app"]],decls:1,vars:0,template:function(t,e){1&t&&r.Ib(0,"router-outlet")},directives:[N.f],encapsulation:2}),t})();var L=n("3Pt+"),M=n("jU2X"),U=n("4Sfc"),H=n("Cfvw");let F=(()=>{class t{constructor(){this.products=[new U.a(1,"Product 1","Category 1","Product 1 (Category 1)",100),new U.a(2,"Product 2","Category 1","Product 2 (Category 1)",100),new U.a(3,"Product 3","Category 1","Product 3 (Category 1)",100),new U.a(4,"Product 4","Category 1","Product 4 (Category 1)",100),new U.a(5,"Product 5","Category 1","Product 5 (Category 1)",100),new U.a(6,"Product 6","Category 2","Product 6 (Category 2)",100),new U.a(7,"Product 7","Category 2","Product 7 (Category 2)",100),new U.a(8,"Product 8","Category 2","Product 8 (Category 2)",100),new U.a(9,"Product 9","Category 2","Product 9 (Category 2)",100),new U.a(10,"Product 10","Category 2","Product 10 (Category 2)",100),new U.a(11,"Product 11","Category 3","Product 11 (Category 3)",100),new U.a(12,"Product 12","Category 3","Product 12 (Category 3)",100),new U.a(13,"Product 13","Category 3","Product 13 (Category 3)",100),new U.a(14,"Product 14","Category 3","Product 14 (Category 3)",100),new U.a(15,"Product 15","Category 3","Product 15 (Category 3)",100)]}getProducts(){return Object(H.a)([this.products])}saveOrder(t){return console.log(JSON.stringify(t)),Object(H.a)([t])}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),$=(()=>{class t{constructor(){this.lines=[],this.itemCount=0,this.cartPrice=0}addLine(t,e=1){let n=this.lines.find(e=>e.product.id==t.id);null!=n?n.quantity+=e:this.lines.push(new q(t,e)),this.recalculate()}updateQuantity(t,e){let n=this.lines.find(e=>e.product.id==t.id);null!=n&&(n.quantity=Number(e)),this.recalculate()}removeLine(t){let e=this.lines.findIndex(e=>e.product.id==t);this.lines.splice(e,1),this.recalculate()}clear(){this.lines=[],this.itemCount=0,this.cartPrice=0}recalculate(){this.itemCount=0,this.cartPrice=0,this.lines.forEach(t=>{this.itemCount+=t.quantity,this.cartPrice+=t.quantity*t.product.price})}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();class q{constructor(t,e){this.product=t,this.quantity=e}get lineTotal(){return this.quantity*this.product.price}}let z=(()=>{class t{constructor(t){this.cart=t,this.shipped=!1}clear(){this.id=null,this.name=this.address=this.city=null,this.state=this.zip=this.country=null,this.shipped=!1,this.cart.clear()}}return t.\u0275fac=function(e){return new(e||t)(r.Ob($))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();var B=n("hf/X"),K=n("DZdm"),W=n("tk/3"),J=n("hO0c"),G=n("XNiG");let Z=(()=>{class t{constructor(){this.connEvents=new G.a,window.addEventListener("online",t=>this.handleConnectionChange(t)),window.addEventListener("offline",t=>this.handleConnectionChange(t))}handleConnectionChange(t){this.connEvents.next(this.connected)}get connected(){return window.navigator.onLine}get Changes(){return this.connEvents}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),Q=(()=>{class t{}return t.\u0275mod=r.Fb({type:t}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)},providers:[M.a,$,z,B.a,{provide:F,useClass:K.a},K.a,J.a,Z],imports:[[W.b]]}),t})(),X=(()=>{class t{}return t.\u0275mod=r.Fb({type:t}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)},imports:[[Q,D,L.c,N.e]]}),t})();function Y(t,e){if(1&t&&(r.Kb(0,"span"),r.ec(1),r.Ub(2,"currency"),r.Jb()),2&t){const t=r.Tb();r.xb(1),r.hc(" ",t.cart.itemCount," item(s) ",r.Vb(2,2,t.cart.cartPrice,"USD","symbol","2.2-2")," ")}}function tt(t,e){1&t&&(r.Kb(0,"span"),r.ec(1," (empty) "),r.Jb())}let et=(()=>{class t{constructor(t){this.cart=t}}return t.\u0275fac=function(e){return new(e||t)(r.Hb($))},t.\u0275cmp=r.Bb({type:t,selectors:[["cart-summary"]],decls:7,vars:3,consts:[[1,"float-right"],[4,"ngIf"],["routerLink","/cart",1,"btn","btn-sm","bg-dark","text-white",3,"disabled"],[1,"fa","fa-shopping-cart"]],template:function(t,e){1&t&&(r.Kb(0,"div",0),r.Kb(1,"small"),r.ec(2," Your cart: "),r.dc(3,Y,3,7,"span",1),r.dc(4,tt,2,0,"span",1),r.Jb(),r.Kb(5,"button",2),r.Ib(6,"i",3),r.Jb(),r.Jb()),2&t&&(r.xb(3),r.Wb("ngIf",e.cart.itemCount>0),r.xb(1),r.Wb("ngIf",0==e.cart.itemCount),r.xb(1),r.Wb("disabled",0==e.cart.itemCount))},directives:[s.j,N.c],pipes:[s.c],encapsulation:2}),t})(),nt=(()=>{class t{constructor(t,e){this.container=t,this.template=e}ngOnChanges(t){this.container.clear();for(let e=0;e{class t{constructor(t,e,n){this.repository=t,this.cart=e,this.router=n,this.selectedCategory=null,this.productsPerPage=4,this.selectedPage=1}get products(){let t=(this.selectedPage-1)*this.productsPerPage;return this.repository.getProducts(this.selectedCategory).slice(t,t+this.productsPerPage)}get categories(){return this.repository.getCategories()}changeCategory(t){this.selectedCategory=t}changePage(t){this.selectedPage=t}changePageSize(t){this.productsPerPage=Number(t),this.changePage(1)}get pageCount(){return Math.ceil(this.repository.getProducts(this.selectedCategory).length/this.productsPerPage)}addProductToCart(t){this.cart.addLine(t),this.router.navigateByUrl("/cart")}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(M.a),r.Hb($),r.Hb(N.b))},t.\u0275cmp=r.Bb({type:t,selectors:[["store"]],decls:27,vars:4,consts:[[1,"container-fluid"],[1,"row"],[1,"col","bg-dark","text-white"],[1,"navbar-brand"],[1,"col-3","p-2"],[1,"btn","btn-block","btn-outline-primary",3,"click"],["class","btn btn-outline-primary btn-block",3,"active","click",4,"ngFor","ngForOf"],["routerLink","/admin",1,"btn","btn-block","btn-danger","mt-5"],[1,"col-9","p-2"],["class","card m-1 p-1 bg-light",4,"ngFor","ngForOf"],[1,"form-inline","float-left","mr-1"],[1,"form-control",3,"value","change"],["value","3"],["value","4"],["value","6"],["value","8"],[1,"btn-group","float-right"],["class","btn btn-outline-primary",3,"active","click",4,"counter","counterOf"],[1,"btn","btn-outline-primary","btn-block",3,"click"],[1,"card","m-1","p-1","bg-light"],[1,"badge","badge-pill","badge-primary","float-right"],[1,"card-text","bg-white","p-1"],[1,"btn","btn-success","btn-sm","float-right",3,"click"],[1,"btn","btn-outline-primary",3,"click"]],template:function(t,e){1&t&&(r.Kb(0,"div",0),r.Kb(1,"div",1),r.Kb(2,"div",2),r.Kb(3,"a",3),r.ec(4,"SPORTS STORE"),r.Jb(),r.Ib(5,"cart-summary"),r.Jb(),r.Jb(),r.Kb(6,"div",1),r.Kb(7,"div",4),r.Kb(8,"button",5),r.Rb("click",function(){return e.changeCategory()}),r.ec(9," Home "),r.Jb(),r.dc(10,st,2,3,"button",6),r.Kb(11,"button",7),r.ec(12," Admin "),r.Jb(),r.Jb(),r.Kb(13,"div",8),r.dc(14,it,10,8,"div",9),r.Kb(15,"div",10),r.Kb(16,"select",11),r.Rb("change",function(t){return e.changePageSize(t.target.value)}),r.Kb(17,"option",12),r.ec(18,"3 per Page"),r.Jb(),r.Kb(19,"option",13),r.ec(20,"4 per Page"),r.Jb(),r.Kb(21,"option",14),r.ec(22,"6 per Page"),r.Jb(),r.Kb(23,"option",15),r.ec(24,"8 per Page"),r.Jb(),r.Jb(),r.Jb(),r.Kb(25,"div",16),r.dc(26,ot,2,3,"button",17),r.Jb(),r.Jb(),r.Jb(),r.Jb()),2&t&&(r.xb(10),r.Wb("ngForOf",e.categories),r.xb(4),r.Wb("ngForOf",e.products),r.xb(2),r.Wb("value",e.productsPerPage),r.xb(10),r.Wb("counterOf",e.pageCount))},directives:[et,s.i,N.c,L.h,L.j,nt],pipes:[s.c],encapsulation:2}),t})();function ct(t,e){1&t&&(r.Kb(0,"div",6),r.Kb(1,"h2"),r.ec(2,"Thanks!"),r.Jb(),r.Kb(3,"p"),r.ec(4,"Thanks for placing your order."),r.Jb(),r.Kb(5,"p"),r.ec(6,"We'll ship your goods as soon as possible."),r.Jb(),r.Kb(7,"button",7),r.ec(8,"Return to Store"),r.Jb(),r.Jb())}function ut(t,e){1&t&&(r.Kb(0,"span",27),r.ec(1," Please enter your name "),r.Jb())}function lt(t,e){1&t&&(r.Kb(0,"span",27),r.ec(1," Please enter your address "),r.Jb())}function ht(t,e){1&t&&(r.Kb(0,"span",27),r.ec(1," Please enter your city "),r.Jb())}function dt(t,e){1&t&&(r.Kb(0,"span",27),r.ec(1," Please enter your state "),r.Jb())}function pt(t,e){1&t&&(r.Kb(0,"span",27),r.ec(1," Please enter your zip/postal code "),r.Jb())}function ft(t,e){1&t&&(r.Kb(0,"span",27),r.ec(1," Please enter your country "),r.Jb())}function gt(t,e){if(1&t){const t=r.Lb();r.Kb(0,"form",8,9),r.Rb("ngSubmit",function(){r.ac(t);const e=r.Zb(1);return r.Tb().submitOrder(e)}),r.Kb(2,"div",10),r.Kb(3,"label"),r.ec(4,"Name"),r.Jb(),r.Kb(5,"input",11,12),r.Rb("ngModelChange",function(e){return r.ac(t),r.Tb().order.name=e}),r.Jb(),r.dc(7,ut,2,0,"span",13),r.Jb(),r.Kb(8,"div",10),r.Kb(9,"label"),r.ec(10,"Address"),r.Jb(),r.Kb(11,"input",14,15),r.Rb("ngModelChange",function(e){return r.ac(t),r.Tb().order.address=e}),r.Jb(),r.dc(13,lt,2,0,"span",13),r.Jb(),r.Kb(14,"div",10),r.Kb(15,"label"),r.ec(16,"City"),r.Jb(),r.Kb(17,"input",16,17),r.Rb("ngModelChange",function(e){return r.ac(t),r.Tb().order.city=e}),r.Jb(),r.dc(19,ht,2,0,"span",13),r.Jb(),r.Kb(20,"div",10),r.Kb(21,"label"),r.ec(22,"State"),r.Jb(),r.Kb(23,"input",18,19),r.Rb("ngModelChange",function(e){return r.ac(t),r.Tb().order.state=e}),r.Jb(),r.dc(25,dt,2,0,"span",13),r.Jb(),r.Kb(26,"div",10),r.Kb(27,"label"),r.ec(28,"Zip/Postal Code"),r.Jb(),r.Kb(29,"input",20,21),r.Rb("ngModelChange",function(e){return r.ac(t),r.Tb().order.zip=e}),r.Jb(),r.dc(31,pt,2,0,"span",13),r.Jb(),r.Kb(32,"div",10),r.Kb(33,"label"),r.ec(34,"Country"),r.Jb(),r.Kb(35,"input",22,23),r.Rb("ngModelChange",function(e){return r.ac(t),r.Tb().order.country=e}),r.Jb(),r.dc(37,ft,2,0,"span",13),r.Jb(),r.Kb(38,"div",24),r.Kb(39,"button",25),r.ec(40,"Back"),r.Jb(),r.Kb(41,"button",26),r.ec(42,"Complete Order"),r.Jb(),r.Jb(),r.Jb()}if(2&t){const t=r.Zb(6),e=r.Zb(12),n=r.Zb(18),s=r.Zb(24),i=r.Zb(30),o=r.Zb(36),a=r.Tb();r.xb(5),r.Wb("ngModel",a.order.name),r.xb(2),r.Wb("ngIf",a.submitted&&t.invalid),r.xb(4),r.Wb("ngModel",a.order.address),r.xb(2),r.Wb("ngIf",a.submitted&&e.invalid),r.xb(4),r.Wb("ngModel",a.order.city),r.xb(2),r.Wb("ngIf",a.submitted&&n.invalid),r.xb(4),r.Wb("ngModel",a.order.state),r.xb(2),r.Wb("ngIf",a.submitted&&s.invalid),r.xb(4),r.Wb("ngModel",a.order.zip),r.xb(2),r.Wb("ngIf",a.submitted&&i.invalid),r.xb(4),r.Wb("ngModel",a.order.country),r.xb(2),r.Wb("ngIf",a.submitted&&o.invalid)}}let mt=(()=>{class t{constructor(t,e){this.repository=t,this.order=e,this.orderSent=!1,this.submitted=!1}submitOrder(t){this.submitted=!0,t.valid&&this.repository.saveOrder(this.order).subscribe(t=>{this.order.clear(),this.orderSent=!0,this.submitted=!1})}}return t.\u0275fac=function(e){return new(e||t)(r.Hb(B.a),r.Hb(z))},t.\u0275cmp=r.Bb({type:t,selectors:[["ng-component"]],decls:7,vars:2,consts:[[1,"container-fluid"],[1,"row"],[1,"col","bg-dark","text-white"],[1,"navbar-brand"],["class","m-2 text-center",4,"ngIf"],["novalidate","","class","m-2",3,"ngSubmit",4,"ngIf"],[1,"m-2","text-center"],["routerLink","/store",1,"btn","btn-primary"],["novalidate","",1,"m-2",3,"ngSubmit"],["form","ngForm"],[1,"form-group"],["name","name","required","",1,"form-control",3,"ngModel","ngModelChange"],["name","ngModel"],["class","text-danger",4,"ngIf"],["name","address","required","",1,"form-control",3,"ngModel","ngModelChange"],["address","ngModel"],["name","city","required","",1,"form-control",3,"ngModel","ngModelChange"],["city","ngModel"],["name","state","required","",1,"form-control",3,"ngModel","ngModelChange"],["state","ngModel"],["name","zip","required","",1,"form-control",3,"ngModel","ngModelChange"],["zip","ngModel"],["name","country","required","",1,"form-control",3,"ngModel","ngModelChange"],["country","ngModel"],[1,"text-center"],["routerLink","/cart",1,"btn","btn-secondary","m-1"],["type","submit",1,"btn","btn-primary","m-1"],[1,"text-danger"]],template:function(t,e){1&t&&(r.Kb(0,"div",0),r.Kb(1,"div",1),r.Kb(2,"div",2),r.Kb(3,"a",3),r.ec(4,"SPORTS STORE"),r.Jb(),r.Jb(),r.Jb(),r.Jb(),r.dc(5,ct,9,0,"div",4),r.dc(6,gt,43,12,"form",5)),2&t&&(r.xb(5),r.Wb("ngIf",e.orderSent),r.xb(1),r.Wb("ngIf",!e.orderSent))},directives:[s.j,N.c,L.k,L.e,L.f,L.b,L.i,L.d,L.g],styles:["input.ng-dirty.ng-invalid[_ngcontent-%COMP%]{border:2px solid red}input.ng-dirty.ng-valid[_ngcontent-%COMP%]{border:2px solid #6bc502}"]}),t})();function bt(t,e){1&t&&(r.Kb(0,"tr"),r.Kb(1,"td",14),r.ec(2," Your cart is empty "),r.Jb(),r.Jb())}function yt(t,e){if(1&t){const t=r.Lb();r.Kb(0,"tr"),r.Kb(1,"td"),r.Kb(2,"input",15),r.Rb("change",function(n){r.ac(t);const s=e.$implicit;return r.Tb().cart.updateQuantity(s.product,n.target.value)}),r.Jb(),r.Jb(),r.Kb(3,"td"),r.ec(4),r.Jb(),r.Kb(5,"td",7),r.ec(6),r.Ub(7,"currency"),r.Jb(),r.Kb(8,"td",7),r.ec(9),r.Ub(10,"currency"),r.Jb(),r.Kb(11,"td",5),r.Kb(12,"button",16),r.Rb("click",function(){r.ac(t);const n=e.$implicit;return r.Tb().cart.removeLine(n.product.id)}),r.ec(13," Remove "),r.Jb(),r.Jb(),r.Jb()}if(2&t){const t=e.$implicit;r.xb(2),r.Wb("value",t.quantity),r.xb(2),r.fc(t.product.name),r.xb(2),r.gc(" ",r.Vb(7,4,t.product.price,"USD","symbol","2.2-2")," "),r.xb(3),r.gc(" ",r.Vb(10,9,t.lineTotal,"USD","symbol","2.2-2")," ")}}let vt=(()=>{class t{constructor(t,e){this.cart=t,this.connection=e,this.connected=!0,this.connected=this.connection.connected,e.Changes.subscribe(t=>this.connected=t)}}return t.\u0275fac=function(e){return new(e||t)(r.Hb($),r.Hb(Z))},t.\u0275cmp=r.Bb({type:t,selectors:[["ng-component"]],decls:37,vars:10,consts:[[1,"container-fluid"],[1,"row"],[1,"col","bg-dark","text-white"],[1,"navbar-brand"],[1,"col","mt-2"],[1,"text-center"],[1,"table","table-bordered","table-striped","p-2"],[1,"text-right"],[4,"ngIf"],[4,"ngFor","ngForOf"],["colspan","3",1,"text-right"],[1,"col"],["routerLink","/store",1,"btn","btn-primary","m-1"],["routerLink","/checkout",1,"btn","btn-secondary","m-1",3,"disabled"],["colspan","4",1,"text-center"],["type","number",1,"form-control-sm",2,"width","5em",3,"value","change"],[1,"btn","btn-sm","btn-danger",3,"click"]],template:function(t,e){1&t&&(r.Kb(0,"div",0),r.Kb(1,"div",1),r.Kb(2,"div",2),r.Kb(3,"a",3),r.ec(4,"SPORTS STORE"),r.Jb(),r.Jb(),r.Jb(),r.Kb(5,"div",1),r.Kb(6,"div",4),r.Kb(7,"h2",5),r.ec(8,"Your Cart"),r.Jb(),r.Kb(9,"table",6),r.Kb(10,"thead"),r.Kb(11,"tr"),r.Kb(12,"th"),r.ec(13,"Quantity"),r.Jb(),r.Kb(14,"th"),r.ec(15,"Product"),r.Jb(),r.Kb(16,"th",7),r.ec(17,"Price"),r.Jb(),r.Kb(18,"th",7),r.ec(19,"Subtotal"),r.Jb(),r.Jb(),r.Jb(),r.Kb(20,"tbody"),r.dc(21,bt,3,0,"tr",8),r.dc(22,yt,14,14,"tr",9),r.Jb(),r.Kb(23,"tfoot"),r.Kb(24,"tr"),r.Kb(25,"td",10),r.ec(26,"Total:"),r.Jb(),r.Kb(27,"td",7),r.ec(28),r.Ub(29,"currency"),r.Jb(),r.Jb(),r.Jb(),r.Jb(),r.Jb(),r.Jb(),r.Kb(30,"div",1),r.Kb(31,"div",11),r.Kb(32,"div",5),r.Kb(33,"button",12),r.ec(34," Continue Shopping "),r.Jb(),r.Kb(35,"button",13),r.ec(36),r.Jb(),r.Jb(),r.Jb(),r.Jb(),r.Jb()),2&t&&(r.xb(21),r.Wb("ngIf",0==e.cart.lines.length),r.xb(1),r.Wb("ngForOf",e.cart.lines),r.xb(6),r.gc(" ",r.Vb(29,5,e.cart.cartPrice,"USD","symbol","2.2-2")," "),r.xb(7),r.Wb("disabled",0==e.cart.lines.length||!e.connected),r.xb(1),r.gc(" ",e.connected?"Checkout":"Offline"," "))},directives:[s.j,s.i,N.c],pipes:[s.c],encapsulation:2}),t})(),_t=(()=>{class t{constructor(t){this.router=t,this.firstNavigation=!0}canActivate(t,e){return!this.firstNavigation||(this.firstNavigation=!1,t.component==at)||(this.router.navigateByUrl("/"),!1)}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(N.b))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();var wt=n("NXyV"),Ct=n("HDdC");function Ot(t,e){return new Ct.a(e?n=>e.schedule(St,0,{error:t,subscriber:n}):e=>e.error(t))}function St({error:t,subscriber:e}){e.error(t)}var xt=n("DH7j"),Et=n("n6bG"),Tt=n("lJxs");function kt(t,e,n,r){return Object(Et.a)(n)&&(r=n,n=void 0),r?kt(t,e,n).pipe(Object(Tt.a)(t=>Object(xt.a)(t)?r(...t):r(t))):new Ct.a(r=>{At(t,e,function(t){r.next(arguments.length>1?Array.prototype.slice.call(arguments):t)},r,n)})}function At(t,e,n,r,s){let i;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(t)){const r=t;t.addEventListener(e,n,s),i=()=>r.removeEventListener(e,n,s)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(t)){const r=t;t.on(e,n),i=()=>r.off(e,n)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(t)){const r=t;t.addListener(e,n),i=()=>r.removeListener(e,n)}else{if(!t||!t.length)throw new TypeError("Invalid event target");for(let i=0,o=t.length;i{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=()=>Date.now(),t})();class zt extends qt{constructor(t,e=qt.now){super(t,()=>zt.delegate&&zt.delegate!==this?zt.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return zt.delegate&&zt.delegate!==this?zt.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let n;this.active=!0;do{if(n=t.execute(t.state,t.delay))break}while(t=e.shift());if(this.active=!1,n){for(;t=e.shift();)t.unsubscribe();throw n}}}const Bt=new zt($t);var Kt=n("7o/Q"),Wt=n("EY2u");let Jt=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}}do(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Object(jt.a)(this.value);case"E":return Ot(this.error);case"C":return Object(Wt.b)()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Gt{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new Zt(t,this.delay,this.scheduler))}}class Zt extends Kt.a{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,r=t.scheduler,s=t.destination;for(;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(s);if(n.length>0){const e=Math.max(0,n[0].time-r.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(Zt.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new Qt(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Jt.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Jt.createComplete()),this.unsubscribe()}}class Qt{constructor(t,e){this.time=t,this.notification=e}}const Xt="Service workers are disabled or not supported by this browser";class Yt{constructor(t){if(this.serviceWorker=t,t){const e=kt(t,"controllerchange").pipe(Object(Tt.a)(()=>t.controller)),n=Object(wt.a)(()=>Object(jt.a)(t.controller)),r=Object(Pt.a)(n,e);this.worker=r.pipe(Object(Nt.a)(t=>!!t)),this.registration=this.worker.pipe(Object(Vt.a)(()=>t.getRegistration()));const s=kt(t,"message").pipe(Object(Tt.a)(t=>t.data)).pipe(Object(Nt.a)(t=>t&&t.type)).pipe(Object(Lt.a)(new G.a));s.connect(),this.events=s}else this.worker=this.events=this.registration=Object(wt.a)(()=>Ot(new Error("Service workers are disabled or not supported by this browser")))}postMessage(t,e){return this.worker.pipe(Object(Mt.a)(1),Object(Ut.a)(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>{})}postMessageWithStatus(t,e,n){const r=this.waitForStatus(n),s=this.postMessage(t,e);return Promise.all([r,s]).then(()=>{})}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(Object(Nt.a)(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(Object(Mt.a)(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(Object(Nt.a)(e=>e.nonce===t),Object(Mt.a)(1),Object(Tt.a)(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}let te=(()=>{class t{constructor(t){if(this.sw=t,this.subscriptionChanges=new G.a,!t.isEnabled)return this.messages=It,this.notificationClicks=It,void(this.subscription=It);this.messages=this.sw.eventsOfType("PUSH").pipe(Object(Tt.a)(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(Object(Tt.a)(t=>t.data)),this.pushManager=this.sw.registration.pipe(Object(Tt.a)(t=>t.pushManager));const e=this.pushManager.pipe(Object(Vt.a)(t=>t.getSubscription()));this.subscription=Object(Dt.a)(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(Xt));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),r=new Uint8Array(new ArrayBuffer(n.length));for(let s=0;st.subscribe(e)),Object(Mt.a)(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(Object(Mt.a)(1),Object(Vt.a)(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(Xt))}decodeBase64(t){return atob(t)}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(Yt))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})(),ee=(()=>{class t{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=It,this.activated=It,void(this.unrecoverable=It);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED"),this.unrecoverable=this.sw.eventsOfType("UNRECOVERABLE_STATE")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(Xt));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(Xt));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}return t.\u0275fac=function(e){return new(e||t)(r.Ob(Yt))},t.\u0275prov=r.Db({token:t,factory:t.\u0275fac}),t})();class ne{}const re=new r.q("NGSW_REGISTER_SCRIPT");function se(t,e,n,i){return()=>{if(!Object(s.n)(i)||!("serviceWorker"in navigator)||!1===n.enabled)return;let o;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)o=n.registrationStrategy();else{const[e,...r]=(n.registrationStrategy||"registerWhenStable:30000").split(":");switch(e){case"registerImmediately":o=Object(jt.a)(null);break;case"registerWithDelay":o=ie(+r[0]||0);break;case"registerWhenStable":o=r[0]?Object(Dt.a)(oe(t),ie(+r[0])):oe(t);break;default:throw new Error("Unknown ServiceWorker registration strategy: "+n.registrationStrategy)}}t.get(r.z).runOutsideAngular(()=>o.pipe(Object(Mt.a)(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}).catch(t=>console.error("Service worker registration failed with:",t))))}}function ie(t){return Object(jt.a)(null).pipe(function(t,e=Bt){var n;const r=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new Gt(r,e))}(t))}function oe(t){return t.get(r.g).isStable.pipe(Object(Nt.a)(t=>t))}function ae(t,e){return new Yt(Object(s.n)(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}let ce=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:re,useValue:e},{provide:ne,useValue:n},{provide:Yt,useFactory:ae,deps:[ne,r.B]},{provide:r.d,useFactory:se,deps:[r.r,re,ne,r.B],multi:!0}]}}}return t.\u0275mod=r.Fb({type:t}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)},providers:[te,ee]}),t})(),ue=(()=>{class t{}return t.\u0275mod=r.Fb({type:t,bootstrap:[V]}),t.\u0275inj=r.Eb({factory:function(e){return new(e||t)},providers:[_t],imports:[[D,X,N.e.forRoot([{path:"store",component:at,canActivate:[_t]},{path:"cart",component:vt,canActivate:[_t]},{path:"checkout",component:mt,canActivate:[_t]},{path:"admin",loadChildren:()=>n.e(4).then(n.bind(null,"jkDv")).then(t=>t.AdminModule),canActivate:[_t]},{path:"**",redirectTo:"/store"}]),ce.register("ngsw-worker.js",{enabled:!0})]]}),t})();Object(r.R)(),R().bootstrapModule(ue).catch(t=>console.log(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"},zx2A:function(t,e,n){"use strict";n.d(e,"a",function(){return o}),n.d(e,"b",function(){return a}),n.d(e,"c",function(){return c});var r=n("7o/Q"),s=n("HDdC"),i=n("SeVD");class o extends r.a{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class a extends r.a{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function c(t,e){if(!e.closed)return t instanceof s.a?t.subscribe(e):Object(i.a)(t)(e)}}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/dist/SportsStore/manifest.webmanifest ================================================ { "name": "SportsStore", "short_name": "SportsStore", "theme_color": "#1976d2", "background_color": "#fafafa", "display": "standalone", "scope": "./", "start_url": "./", "icons": [ { "src": "assets/icons/icon-72x72.png", "sizes": "72x72", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-96x96.png", "sizes": "96x96", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-128x128.png", "sizes": "128x128", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-144x144.png", "sizes": "144x144", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-152x152.png", "sizes": "152x152", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-192x192.png", "sizes": "192x192", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-384x384.png", "sizes": "384x384", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-512x512.png", "sizes": "512x512", "type": "image/png", "purpose": "maskable any" } ] } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/dist/SportsStore/ngsw-worker.js ================================================ (function () { 'use strict'; /** * @license * Copyright Google LLC 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 */ /** * Adapts the service worker to its runtime environment. * * Mostly, this is used to mock out identifiers which are otherwise read * from the global scope. */ class Adapter { constructor(scopeUrl) { this.scopeUrl = scopeUrl; const parsedScopeUrl = this.parseUrl(this.scopeUrl); // Determine the origin from the registration scope. This is used to differentiate between // relative and absolute URLs. this.origin = parsedScopeUrl.origin; // Suffixing `ngsw` with the baseHref to avoid clash of cache names for SWs with different // scopes on the same domain. this.cacheNamePrefix = 'ngsw:' + parsedScopeUrl.path; } /** * Wrapper around the `Request` constructor. */ newRequest(input, init) { return new Request(input, init); } /** * Wrapper around the `Response` constructor. */ newResponse(body, init) { return new Response(body, init); } /** * Wrapper around the `Headers` constructor. */ newHeaders(headers) { return new Headers(headers); } /** * Test if a given object is an instance of `Client`. */ isClient(source) { return (source instanceof Client); } /** * Read the current UNIX time in milliseconds. */ get time() { return Date.now(); } /** * Get a normalized representation of a URL such as those found in the ServiceWorker's `ngsw.json` * configuration. * * More specifically: * 1. Resolve the URL relative to the ServiceWorker's scope. * 2. If the URL is relative to the ServiceWorker's own origin, then only return the path part. * Otherwise, return the full URL. * * @param url The raw request URL. * @return A normalized representation of the URL. */ normalizeUrl(url) { // Check the URL's origin against the ServiceWorker's. const parsed = this.parseUrl(url, this.scopeUrl); return (parsed.origin === this.origin ? parsed.path : url); } /** * Parse a URL into its different parts, such as `origin`, `path` and `search`. */ parseUrl(url, relativeTo) { // Workaround a Safari bug, see // https://github.com/angular/angular/issues/31061#issuecomment-503637978 const parsed = !relativeTo ? new URL(url) : new URL(url, relativeTo); return { origin: parsed.origin, path: parsed.pathname, search: parsed.search }; } /** * Wait for a given amount of time before completing a Promise. */ timeout(ms) { return new Promise(resolve => { setTimeout(() => resolve(), ms); }); } } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * An error returned in rejected promises if the given key is not found in the table. */ class NotFound { constructor(table, key) { this.table = table; this.key = key; } } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * An implementation of a `Database` that uses the `CacheStorage` API to serialize * state within mock `Response` objects. */ class CacheDatabase { constructor(scope, adapter) { this.scope = scope; this.adapter = adapter; this.tables = new Map(); } 'delete'(name) { if (this.tables.has(name)) { this.tables.delete(name); } return this.scope.caches.delete(`${this.adapter.cacheNamePrefix}:db:${name}`); } list() { return this.scope.caches.keys().then(keys => keys.filter(key => key.startsWith(`${this.adapter.cacheNamePrefix}:db:`))); } open(name, cacheQueryOptions) { if (!this.tables.has(name)) { const table = this.scope.caches.open(`${this.adapter.cacheNamePrefix}:db:${name}`) .then(cache => new CacheTable(name, cache, this.adapter, cacheQueryOptions)); this.tables.set(name, table); } return this.tables.get(name); } } /** * A `Table` backed by a `Cache`. */ class CacheTable { constructor(table, cache, adapter, cacheQueryOptions) { this.table = table; this.cache = cache; this.adapter = adapter; this.cacheQueryOptions = cacheQueryOptions; } request(key) { return this.adapter.newRequest('/' + key); } 'delete'(key) { return this.cache.delete(this.request(key), this.cacheQueryOptions); } keys() { return this.cache.keys().then(requests => requests.map(req => req.url.substr(1))); } read(key) { return this.cache.match(this.request(key), this.cacheQueryOptions).then(res => { if (res === undefined) { return Promise.reject(new NotFound(this.table, key)); } return res.json(); }); } write(key, value) { return this.cache.put(this.request(key), this.adapter.newResponse(JSON.stringify(value))); } } /*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ***************************************************************************** */ function __awaiter(thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ var UpdateCacheStatus = /*@__PURE__*/ (function (UpdateCacheStatus) { UpdateCacheStatus[UpdateCacheStatus["NOT_CACHED"] = 0] = "NOT_CACHED"; UpdateCacheStatus[UpdateCacheStatus["CACHED_BUT_UNUSED"] = 1] = "CACHED_BUT_UNUSED"; UpdateCacheStatus[UpdateCacheStatus["CACHED"] = 2] = "CACHED"; return UpdateCacheStatus; })({}); /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ class SwCriticalError extends Error { constructor() { super(...arguments); this.isCritical = true; } } function errorToString(error) { if (error instanceof Error) { return `${error.message}\n${error.stack}`; } else { return `${error}`; } } class SwUnrecoverableStateError extends SwCriticalError { constructor() { super(...arguments); this.isUnrecoverableState = true; } } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * Compute the SHA1 of the given string * * see http://csrc.nist.gov/publications/fips/fips180-4/fips-180-4.pdf * * WARNING: this function has not been designed not tested with security in mind. * DO NOT USE IT IN A SECURITY SENSITIVE CONTEXT. * * Borrowed from @angular/compiler/src/i18n/digest.ts */ function sha1(str) { const utf8 = str; const words32 = stringToWords32(utf8, Endian.Big); return _sha1(words32, utf8.length * 8); } function sha1Binary(buffer) { const words32 = arrayBufferToWords32(buffer, Endian.Big); return _sha1(words32, buffer.byteLength * 8); } function _sha1(words32, len) { const w = []; let [a, b, c, d, e] = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0]; words32[len >> 5] |= 0x80 << (24 - len % 32); words32[((len + 64 >> 9) << 4) + 15] = len; for (let i = 0; i < words32.length; i += 16) { const [h0, h1, h2, h3, h4] = [a, b, c, d, e]; for (let j = 0; j < 80; j++) { if (j < 16) { w[j] = words32[i + j]; } else { w[j] = rol32(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1); } const [f, k] = fk(j, b, c, d); const temp = [rol32(a, 5), f, e, k, w[j]].reduce(add32); [e, d, c, b, a] = [d, c, rol32(b, 30), a, temp]; } [a, b, c, d, e] = [add32(a, h0), add32(b, h1), add32(c, h2), add32(d, h3), add32(e, h4)]; } return byteStringToHexString(words32ToByteString([a, b, c, d, e])); } function add32(a, b) { return add32to64(a, b)[1]; } function add32to64(a, b) { const low = (a & 0xffff) + (b & 0xffff); const high = (a >>> 16) + (b >>> 16) + (low >>> 16); return [high >>> 16, (high << 16) | (low & 0xffff)]; } // Rotate a 32b number left `count` position function rol32(a, count) { return (a << count) | (a >>> (32 - count)); } var Endian = /*@__PURE__*/ (function (Endian) { Endian[Endian["Little"] = 0] = "Little"; Endian[Endian["Big"] = 1] = "Big"; return Endian; })({}); function fk(index, b, c, d) { if (index < 20) { return [(b & c) | (~b & d), 0x5a827999]; } if (index < 40) { return [b ^ c ^ d, 0x6ed9eba1]; } if (index < 60) { return [(b & c) | (b & d) | (c & d), 0x8f1bbcdc]; } return [b ^ c ^ d, 0xca62c1d6]; } function stringToWords32(str, endian) { const size = (str.length + 3) >>> 2; const words32 = []; for (let i = 0; i < size; i++) { words32[i] = wordAt(str, i * 4, endian); } return words32; } function arrayBufferToWords32(buffer, endian) { const size = (buffer.byteLength + 3) >>> 2; const words32 = []; const view = new Uint8Array(buffer); for (let i = 0; i < size; i++) { words32[i] = wordAt(view, i * 4, endian); } return words32; } function byteAt(str, index) { if (typeof str === 'string') { return index >= str.length ? 0 : str.charCodeAt(index) & 0xff; } else { return index >= str.byteLength ? 0 : str[index] & 0xff; } } function wordAt(str, index, endian) { let word = 0; if (endian === Endian.Big) { for (let i = 0; i < 4; i++) { word += byteAt(str, index + i) << (24 - 8 * i); } } else { for (let i = 0; i < 4; i++) { word += byteAt(str, index + i) << 8 * i; } } return word; } function words32ToByteString(words32) { return words32.reduce((str, word) => str + word32ToByteString(word), ''); } function word32ToByteString(word) { let str = ''; for (let i = 0; i < 4; i++) { str += String.fromCharCode((word >>> 8 * (3 - i)) & 0xff); } return str; } function byteStringToHexString(str) { let hex = ''; for (let i = 0; i < str.length; i++) { const b = byteAt(str, i); hex += (b >>> 4).toString(16) + (b & 0x0f).toString(16); } return hex.toLowerCase(); } /** * @license * Copyright Google LLC 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 */ /** * A group of assets that are cached in a `Cache` and managed by a given policy. * * Concrete classes derive from this base and specify the exact caching policy. */ class AssetGroup { constructor(scope, adapter, idle, config, hashes, db, prefix) { this.scope = scope; this.adapter = adapter; this.idle = idle; this.config = config; this.hashes = hashes; this.db = db; this.prefix = prefix; /** * A deduplication cache, to make sure the SW never makes two network requests * for the same resource at once. Managed by `fetchAndCacheOnce`. */ this.inFlightRequests = new Map(); /** * Normalized resource URLs. */ this.urls = []; /** * Regular expression patterns. */ this.patterns = []; this.name = config.name; // Normalize the config's URLs to take the ServiceWorker's scope into account. this.urls = config.urls.map(url => adapter.normalizeUrl(url)); // Patterns in the config are regular expressions disguised as strings. Breathe life into them. this.patterns = config.patterns.map(pattern => new RegExp(pattern)); // This is the primary cache, which holds all of the cached requests for this group. If a // resource // isn't in this cache, it hasn't been fetched yet. this.cache = scope.caches.open(`${this.prefix}:${config.name}:cache`); // This is the metadata table, which holds specific information for each cached URL, such as // the timestamp of when it was added to the cache. this.metadata = this.db.open(`${this.prefix}:${config.name}:meta`, config.cacheQueryOptions); } cacheStatus(url) { return __awaiter(this, void 0, void 0, function* () { const cache = yield this.cache; const meta = yield this.metadata; const req = this.adapter.newRequest(url); const res = yield cache.match(req, this.config.cacheQueryOptions); if (res === undefined) { return UpdateCacheStatus.NOT_CACHED; } try { const data = yield meta.read(req.url); if (!data.used) { return UpdateCacheStatus.CACHED_BUT_UNUSED; } } catch (_) { // Error on the side of safety and assume cached. } return UpdateCacheStatus.CACHED; }); } /** * Clean up all the cached data for this group. */ cleanup() { return __awaiter(this, void 0, void 0, function* () { yield this.scope.caches.delete(`${this.prefix}:${this.config.name}:cache`); yield this.db.delete(`${this.prefix}:${this.config.name}:meta`); }); } /** * Process a request for a given resource and return it, or return null if it's not available. */ handleFetch(req, ctx) { return __awaiter(this, void 0, void 0, function* () { const url = this.adapter.normalizeUrl(req.url); // Either the request matches one of the known resource URLs, one of the patterns for // dynamically matched URLs, or neither. Determine which is the case for this request in // order to decide how to handle it. if (this.urls.indexOf(url) !== -1 || this.patterns.some(pattern => pattern.test(url))) { // This URL matches a known resource. Either it's been cached already or it's missing, in // which case it needs to be loaded from the network. // Open the cache to check whether this resource is present. const cache = yield this.cache; // Look for a cached response. If one exists, it can be used to resolve the fetch // operation. const cachedResponse = yield cache.match(req, this.config.cacheQueryOptions); if (cachedResponse !== undefined) { // A response has already been cached (which presumably matches the hash for this // resource). Check whether it's safe to serve this resource from cache. if (this.hashes.has(url)) { // This resource has a hash, and thus is versioned by the manifest. It's safe to return // the response. return cachedResponse; } else { // This resource has no hash, and yet exists in the cache. Check how old this request is // to make sure it's still usable. if (yield this.needToRevalidate(req, cachedResponse)) { this.idle.schedule(`revalidate(${this.prefix}, ${this.config.name}): ${req.url}`, () => __awaiter(this, void 0, void 0, function* () { yield this.fetchAndCacheOnce(req); })); } // In either case (revalidation or not), the cached response must be good. return cachedResponse; } } // No already-cached response exists, so attempt a fetch/cache operation. The original request // may specify things like credential inclusion, but for assets these are not honored in order // to avoid issues with opaque responses. The SW requests the data itself. const res = yield this.fetchAndCacheOnce(this.adapter.newRequest(req.url)); // If this is successful, the response needs to be cloned as it might be used to respond to // multiple fetch operations at the same time. return res.clone(); } else { return null; } }); } /** * Some resources are cached without a hash, meaning that their expiration is controlled * by HTTP caching headers. Check whether the given request/response pair is still valid * per the caching headers. */ needToRevalidate(req, res) { return __awaiter(this, void 0, void 0, function* () { // Three different strategies apply here: // 1) The request has a Cache-Control header, and thus expiration needs to be based on its age. // 2) The request has an Expires header, and expiration is based on the current timestamp. // 3) The request has no applicable caching headers, and must be revalidated. if (res.headers.has('Cache-Control')) { // Figure out if there is a max-age directive in the Cache-Control header. const cacheControl = res.headers.get('Cache-Control'); const cacheDirectives = cacheControl // Directives are comma-separated within the Cache-Control header value. .split(',') // Make sure each directive doesn't have extraneous whitespace. .map(v => v.trim()) // Some directives have values (like maxage and s-maxage) .map(v => v.split('=')); // Lowercase all the directive names. cacheDirectives.forEach(v => v[0] = v[0].toLowerCase()); // Find the max-age directive, if one exists. const maxAgeDirective = cacheDirectives.find(v => v[0] === 'max-age'); const cacheAge = maxAgeDirective ? maxAgeDirective[1] : undefined; if (!cacheAge) { // No usable TTL defined. Must assume that the response is stale. return true; } try { const maxAge = 1000 * parseInt(cacheAge); // Determine the origin time of this request. If the SW has metadata on the request (which // it // should), it will have the time the request was added to the cache. If it doesn't for some // reason, the request may have a Date header which will serve the same purpose. let ts; try { // Check the metadata table. If a timestamp is there, use it. const metaTable = yield this.metadata; ts = (yield metaTable.read(req.url)).ts; } catch (_a) { // Otherwise, look for a Date header. const date = res.headers.get('Date'); if (date === null) { // Unable to determine when this response was created. Assume that it's stale, and // revalidate it. return true; } ts = Date.parse(date); } const age = this.adapter.time - ts; return age < 0 || age > maxAge; } catch (_b) { // Assume stale. return true; } } else if (res.headers.has('Expires')) { // Determine if the expiration time has passed. const expiresStr = res.headers.get('Expires'); try { // The request needs to be revalidated if the current time is later than the expiration // time, if it parses correctly. return this.adapter.time > Date.parse(expiresStr); } catch (_c) { // The expiration date failed to parse, so revalidate as a precaution. return true; } } else { // No way to evaluate staleness, so assume the response is already stale. return true; } }); } /** * Fetch the complete state of a cached resource, or return null if it's not found. */ fetchFromCacheOnly(url) { return __awaiter(this, void 0, void 0, function* () { const cache = yield this.cache; const metaTable = yield this.metadata; // Lookup the response in the cache. const request = this.adapter.newRequest(url); const response = yield cache.match(request, this.config.cacheQueryOptions); if (response === undefined) { // It's not found, return null. return null; } // Next, lookup the cached metadata. let metadata = undefined; try { metadata = yield metaTable.read(request.url); } catch (_a) { // Do nothing, not found. This shouldn't happen, but it can be handled. } // Return both the response and any available metadata. return { response, metadata }; }); } /** * Lookup all resources currently stored in the cache which have no associated hash. */ unhashedResources() { return __awaiter(this, void 0, void 0, function* () { const cache = yield this.cache; // Start with the set of all cached requests. return (yield cache.keys()) // Normalize their URLs. .map(request => this.adapter.normalizeUrl(request.url)) // Exclude the URLs which have hashes. .filter(url => !this.hashes.has(url)); }); } /** * Fetch the given resource from the network, and cache it if able. */ fetchAndCacheOnce(req, used = true) { return __awaiter(this, void 0, void 0, function* () { // The `inFlightRequests` map holds information about which caching operations are currently // underway for known resources. If this request appears there, another "thread" is already // in the process of caching it, and this work should not be duplicated. if (this.inFlightRequests.has(req.url)) { // There is a caching operation already in progress for this request. Wait for it to // complete, and hopefully it will have yielded a useful response. return this.inFlightRequests.get(req.url); } // No other caching operation is being attempted for this resource, so it will be owned here. // Go to the network and get the correct version. const fetchOp = this.fetchFromNetwork(req); // Save this operation in `inFlightRequests` so any other "thread" attempting to cache it // will block on this chain instead of duplicating effort. this.inFlightRequests.set(req.url, fetchOp); // Make sure this attempt is cleaned up properly on failure. try { // Wait for a response. If this fails, the request will remain in `inFlightRequests` // indefinitely. const res = yield fetchOp; // It's very important that only successful responses are cached. Unsuccessful responses // should never be cached as this can completely break applications. if (!res.ok) { throw new Error(`Response not Ok (fetchAndCacheOnce): request for ${req.url} returned response ${res.status} ${res.statusText}`); } try { // This response is safe to cache (as long as it's cloned). Wait until the cache operation // is complete. const cache = yield this.scope.caches.open(`${this.prefix}:${this.config.name}:cache`); yield cache.put(req, res.clone()); // If the request is not hashed, update its metadata, especially the timestamp. This is // needed for future determination of whether this cached response is stale or not. if (!this.hashes.has(this.adapter.normalizeUrl(req.url))) { // Metadata is tracked for requests that are unhashed. const meta = { ts: this.adapter.time, used }; const metaTable = yield this.metadata; yield metaTable.write(req.url, meta); } return res; } catch (err) { // Among other cases, this can happen when the user clears all data through the DevTools, // but the SW is still running and serving another tab. In that case, trying to write to the // caches throws an `Entry was not found` error. // If this happens the SW can no longer work correctly. This situation is unrecoverable. throw new SwCriticalError(`Failed to update the caches for request to '${req.url}' (fetchAndCacheOnce): ${errorToString(err)}`); } } finally { // Finally, it can be removed from `inFlightRequests`. This might result in a double-remove // if some other chain was already making this request too, but that won't hurt anything. this.inFlightRequests.delete(req.url); } }); } fetchFromNetwork(req, redirectLimit = 3) { return __awaiter(this, void 0, void 0, function* () { // Make a cache-busted request for the resource. const res = yield this.cacheBustedFetchFromNetwork(req); // Check for redirected responses, and follow the redirects. if (res['redirected'] && !!res.url) { // If the redirect limit is exhausted, fail with an error. if (redirectLimit === 0) { throw new SwCriticalError(`Response hit redirect limit (fetchFromNetwork): request redirected too many times, next is ${res.url}`); } // Unwrap the redirect directly. return this.fetchFromNetwork(this.adapter.newRequest(res.url), redirectLimit - 1); } return res; }); } /** * Load a particular asset from the network, accounting for hash validation. */ cacheBustedFetchFromNetwork(req) { return __awaiter(this, void 0, void 0, function* () { const url = this.adapter.normalizeUrl(req.url); // If a hash is available for this resource, then compare the fetched version with the // canonical hash. Otherwise, the network version will have to be trusted. if (this.hashes.has(url)) { // It turns out this resource does have a hash. Look it up. Unless the fetched version // matches this hash, it's invalid and the whole manifest may need to be thrown out. const canonicalHash = this.hashes.get(url); // Ideally, the resource would be requested with cache-busting to guarantee the SW gets // the freshest version. However, doing this would eliminate any chance of the response // being in the HTTP cache. Given that the browser has recently actively loaded the page, // it's likely that many of the responses the SW needs to cache are in the HTTP cache and // are fresh enough to use. In the future, this could be done by setting cacheMode to // *only* check the browser cache for a cached version of the resource, when cacheMode is // fully supported. For now, the resource is fetched directly, without cache-busting, and // if the hash test fails a cache-busted request is tried before concluding that the // resource isn't correct. This gives the benefit of acceleration via the HTTP cache // without the risk of stale data, at the expense of a duplicate request in the event of // a stale response. // Fetch the resource from the network (possibly hitting the HTTP cache). const networkResult = yield this.safeFetch(req); // Decide whether a cache-busted request is necessary. It might be for two independent // reasons: either the non-cache-busted request failed (hopefully transiently) or if the // hash of the content retrieved does not match the canonical hash from the manifest. It's // only valid to access the content of the first response if the request was successful. let makeCacheBustedRequest = !networkResult.ok; if (networkResult.ok) { // The request was successful. A cache-busted request is only necessary if the hashes // don't match. Compare them, making sure to clone the response so it can be used later // if it proves to be valid. const fetchedHash = sha1Binary(yield networkResult.clone().arrayBuffer()); makeCacheBustedRequest = (fetchedHash !== canonicalHash); } // Make a cache busted request to the network, if necessary. if (makeCacheBustedRequest) { // Hash failure, the version that was retrieved under the default URL did not have the // hash expected. This could be because the HTTP cache got in the way and returned stale // data, or because the version on the server really doesn't match. A cache-busting // request will differentiate these two situations. // TODO: handle case where the URL has parameters already (unlikely for assets). const cacheBustReq = this.adapter.newRequest(this.cacheBust(req.url)); const cacheBustedResult = yield this.safeFetch(cacheBustReq); // If the response was unsuccessful, there's nothing more that can be done. if (!cacheBustedResult.ok) { if (cacheBustedResult.status === 404) { throw new SwUnrecoverableStateError(`Failed to retrieve hashed resource from the server. (AssetGroup: ${this.config.name} | URL: ${url})`); } else { throw new SwCriticalError(`Response not Ok (cacheBustedFetchFromNetwork): cache busted request for ${req.url} returned response ${cacheBustedResult.status} ${cacheBustedResult.statusText}`); } } // Hash the contents. const cacheBustedHash = sha1Binary(yield cacheBustedResult.clone().arrayBuffer()); // If the cache-busted version doesn't match, then the manifest is not an accurate // representation of the server's current set of files, and the SW should give up. if (canonicalHash !== cacheBustedHash) { throw new SwCriticalError(`Hash mismatch (cacheBustedFetchFromNetwork): ${req.url}: expected ${canonicalHash}, got ${cacheBustedHash} (after cache busting)`); } // If it does match, then use the cache-busted result. return cacheBustedResult; } // Excellent, the version from the network matched on the first try, with no need for // cache-busting. Use it. return networkResult; } else { // This URL doesn't exist in our hash database, so it must be requested directly. return this.safeFetch(req); } }); } /** * Possibly update a resource, if it's expired and needs to be updated. A no-op otherwise. */ maybeUpdate(updateFrom, req, cache) { return __awaiter(this, void 0, void 0, function* () { const url = this.adapter.normalizeUrl(req.url); const meta = yield this.metadata; // Check if this resource is hashed and already exists in the cache of a prior version. if (this.hashes.has(url)) { const hash = this.hashes.get(url); // Check the caches of prior versions, using the hash to ensure the correct version of // the resource is loaded. const res = yield updateFrom.lookupResourceWithHash(url, hash); // If a previously cached version was available, copy it over to this cache. if (res !== null) { // Copy to this cache. yield cache.put(req, res); yield meta.write(req.url, { ts: this.adapter.time, used: false }); // No need to do anything further with this resource, it's now cached properly. return true; } } // No up-to-date version of this resource could be found. return false; }); } /** * Construct a cache-busting URL for a given URL. */ cacheBust(url) { return url + (url.indexOf('?') === -1 ? '?' : '&') + 'ngsw-cache-bust=' + Math.random(); } safeFetch(req) { return __awaiter(this, void 0, void 0, function* () { try { return yield this.scope.fetch(req); } catch (_a) { return this.adapter.newResponse('', { status: 504, statusText: 'Gateway Timeout', }); } }); } } /** * An `AssetGroup` that prefetches all of its resources during initialization. */ class PrefetchAssetGroup extends AssetGroup { initializeFully(updateFrom) { return __awaiter(this, void 0, void 0, function* () { // Open the cache which actually holds requests. const cache = yield this.cache; // Cache all known resources serially. As this reduce proceeds, each Promise waits // on the last before starting the fetch/cache operation for the next request. Any // errors cause fall-through to the final Promise which rejects. yield this.urls.reduce((previous, url) => __awaiter(this, void 0, void 0, function* () { // Wait on all previous operations to complete. yield previous; // Construct the Request for this url. const req = this.adapter.newRequest(url); // First, check the cache to see if there is already a copy of this resource. const alreadyCached = (yield cache.match(req, this.config.cacheQueryOptions)) !== undefined; // If the resource is in the cache already, it can be skipped. if (alreadyCached) { return; } // If an update source is available. if (updateFrom !== undefined && (yield this.maybeUpdate(updateFrom, req, cache))) { return; } // Otherwise, go to the network and hopefully cache the response (if successful). yield this.fetchAndCacheOnce(req, false); }), Promise.resolve()); // Handle updating of unknown (unhashed) resources. This is only possible if there's // a source to update from. if (updateFrom !== undefined) { const metaTable = yield this.metadata; // Select all of the previously cached resources. These are cached unhashed resources // from previous versions of the app, in any asset group. yield (yield updateFrom.previouslyCachedResources()) // First, narrow down the set of resources to those which are handled by this group. // Either it's a known URL, or it matches a given pattern. .filter(url => this.urls.indexOf(url) !== -1 || this.patterns.some(pattern => pattern.test(url))) // Finally, process each resource in turn. .reduce((previous, url) => __awaiter(this, void 0, void 0, function* () { yield previous; const req = this.adapter.newRequest(url); // It's possible that the resource in question is already cached. If so, // continue to the next one. const alreadyCached = ((yield cache.match(req, this.config.cacheQueryOptions)) !== undefined); if (alreadyCached) { return; } // Get the most recent old version of the resource. const res = yield updateFrom.lookupResourceWithoutHash(url); if (res === null || res.metadata === undefined) { // Unexpected, but not harmful. return; } // Write it into the cache. It may already be expired, but it can still serve // traffic until it's updated (stale-while-revalidate approach). yield cache.put(req, res.response); yield metaTable.write(req.url, Object.assign(Object.assign({}, res.metadata), { used: false })); }), Promise.resolve()); } }); } } class LazyAssetGroup extends AssetGroup { initializeFully(updateFrom) { return __awaiter(this, void 0, void 0, function* () { // No action necessary if no update source is available - resources managed in this group // are all lazily loaded, so there's nothing to initialize. if (updateFrom === undefined) { return; } // Open the cache which actually holds requests. const cache = yield this.cache; // Loop through the listed resources, caching any which are available. yield this.urls.reduce((previous, url) => __awaiter(this, void 0, void 0, function* () { // Wait on all previous operations to complete. yield previous; // Construct the Request for this url. const req = this.adapter.newRequest(url); // First, check the cache to see if there is already a copy of this resource. const alreadyCached = (yield cache.match(req, this.config.cacheQueryOptions)) !== undefined; // If the resource is in the cache already, it can be skipped. if (alreadyCached) { return; } const updated = yield this.maybeUpdate(updateFrom, req, cache); if (this.config.updateMode === 'prefetch' && !updated) { // If the resource was not updated, either it was not cached before or // the previously cached version didn't match the updated hash. In that // case, prefetch update mode dictates that the resource will be updated, // except if it was not previously utilized. Check the status of the // cached resource to see. const cacheStatus = yield updateFrom.recentCacheStatus(url); // If the resource is not cached, or was cached but unused, then it will be // loaded lazily. if (cacheStatus !== UpdateCacheStatus.CACHED) { return; } // Update from the network. yield this.fetchAndCacheOnce(req, false); } }), Promise.resolve()); }); } } /** * @license * Copyright Google LLC 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 */ /** * Manages an instance of `LruState` and moves URLs to the head of the * chain when requested. */ class LruList { constructor(state) { if (state === undefined) { state = { head: null, tail: null, map: {}, count: 0, }; } this.state = state; } /** * The current count of URLs in the list. */ get size() { return this.state.count; } /** * Remove the tail. */ pop() { // If there is no tail, return null. if (this.state.tail === null) { return null; } const url = this.state.tail; this.remove(url); // This URL has been successfully evicted. return url; } remove(url) { const node = this.state.map[url]; if (node === undefined) { return false; } // Special case if removing the current head. if (this.state.head === url) { // The node is the current head. Special case the removal. if (node.next === null) { // This is the only node. Reset the cache to be empty. this.state.head = null; this.state.tail = null; this.state.map = {}; this.state.count = 0; return true; } // There is at least one other node. Make the next node the new head. const next = this.state.map[node.next]; next.previous = null; this.state.head = next.url; node.next = null; delete this.state.map[url]; this.state.count--; return true; } // The node is not the head, so it has a previous. It may or may not be the tail. // If it is not, then it has a next. First, grab the previous node. const previous = this.state.map[node.previous]; // Fix the forward pointer to skip over node and go directly to node.next. previous.next = node.next; // node.next may or may not be set. If it is, fix the back pointer to skip over node. // If it's not set, then this node happened to be the tail, and the tail needs to be // updated to point to the previous node (removing the tail). if (node.next !== null) { // There is a next node, fix its back pointer to skip this node. this.state.map[node.next].previous = node.previous; } else { // There is no next node - the accessed node must be the tail. Move the tail pointer. this.state.tail = node.previous; } node.next = null; node.previous = null; delete this.state.map[url]; // Count the removal. this.state.count--; return true; } accessed(url) { // When a URL is accessed, its node needs to be moved to the head of the chain. // This is accomplished in two steps: // // 1) remove the node from its position within the chain. // 2) insert the node as the new head. // // Sometimes, a URL is accessed which has not been seen before. In this case, step 1 can // be skipped completely (which will grow the chain by one). Of course, if the node is // already the head, this whole operation can be skipped. if (this.state.head === url) { // The URL is already in the head position, accessing it is a no-op. return; } // Look up the node in the map, and construct a new entry if it's const node = this.state.map[url] || { url, next: null, previous: null }; // Step 1: remove the node from its position within the chain, if it is in the chain. if (this.state.map[url] !== undefined) { this.remove(url); } // Step 2: insert the node at the head of the chain. // First, check if there's an existing head node. If there is, it has previous: null. // Its previous pointer should be set to the node we're inserting. if (this.state.head !== null) { this.state.map[this.state.head].previous = url; } // The next pointer of the node being inserted gets set to the old head, before the head // pointer is updated to this node. node.next = this.state.head; // The new head is the new node. this.state.head = url; // If there is no tail, then this is the first node, and is both the head and the tail. if (this.state.tail === null) { this.state.tail = url; } // Set the node in the map of nodes (if the URL has been seen before, this is a no-op) // and count the insertion. this.state.map[url] = node; this.state.count++; } } /** * A group of cached resources determined by a set of URL patterns which follow a LRU policy * for caching. */ class DataGroup { constructor(scope, adapter, config, db, debugHandler, prefix) { this.scope = scope; this.adapter = adapter; this.config = config; this.db = db; this.debugHandler = debugHandler; this.prefix = prefix; /** * Tracks the LRU state of resources in this cache. */ this._lru = null; this.patterns = this.config.patterns.map(pattern => new RegExp(pattern)); this.cache = this.scope.caches.open(`${this.prefix}:dynamic:${this.config.name}:cache`); this.lruTable = this.db.open(`${this.prefix}:dynamic:${this.config.name}:lru`, this.config.cacheQueryOptions); this.ageTable = this.db.open(`${this.prefix}:dynamic:${this.config.name}:age`, this.config.cacheQueryOptions); } /** * Lazily initialize/load the LRU chain. */ lru() { return __awaiter(this, void 0, void 0, function* () { if (this._lru === null) { const table = yield this.lruTable; try { this._lru = new LruList(yield table.read('lru')); } catch (_a) { this._lru = new LruList(); } } return this._lru; }); } /** * Sync the LRU chain to non-volatile storage. */ syncLru() { return __awaiter(this, void 0, void 0, function* () { if (this._lru === null) { return; } const table = yield this.lruTable; try { return table.write('lru', this._lru.state); } catch (err) { // Writing lru cache table failed. This could be a result of a full storage. // Continue serving clients as usual. this.debugHandler.log(err, `DataGroup(${this.config.name}@${this.config.version}).syncLru()`); // TODO: Better detect/handle full storage; e.g. using // [navigator.storage](https://developer.mozilla.org/en-US/docs/Web/API/NavigatorStorage/storage). } }); } /** * Process a fetch event and return a `Response` if the resource is covered by this group, * or `null` otherwise. */ handleFetch(req, ctx) { return __awaiter(this, void 0, void 0, function* () { // Do nothing if (!this.patterns.some(pattern => pattern.test(req.url))) { return null; } // Lazily initialize the LRU cache. const lru = yield this.lru(); // The URL matches this cache. First, check whether this is a mutating request or not. switch (req.method) { case 'OPTIONS': // Don't try to cache this - it's non-mutating, but is part of a mutating request. // Most likely SWs don't even see this, but this guard is here just in case. return null; case 'GET': case 'HEAD': // Handle the request with whatever strategy was selected. switch (this.config.strategy) { case 'freshness': return this.handleFetchWithFreshness(req, ctx, lru); case 'performance': return this.handleFetchWithPerformance(req, ctx, lru); default: throw new Error(`Unknown strategy: ${this.config.strategy}`); } default: // This was a mutating request. Assume the cache for this URL is no longer valid. const wasCached = lru.remove(req.url); // If there was a cached entry, remove it. if (wasCached) { yield this.clearCacheForUrl(req.url); } // Sync the LRU chain to non-volatile storage. yield this.syncLru(); // Finally, fall back on the network. return this.safeFetch(req); } }); } handleFetchWithPerformance(req, ctx, lru) { return __awaiter(this, void 0, void 0, function* () { let res = null; // Check the cache first. If the resource exists there (and is not expired), the cached // version can be used. const fromCache = yield this.loadFromCache(req, lru); if (fromCache !== null) { res = fromCache.res; // Check the age of the resource. if (this.config.refreshAheadMs !== undefined && fromCache.age >= this.config.refreshAheadMs) { ctx.waitUntil(this.safeCacheResponse(req, this.safeFetch(req), lru)); } } if (res !== null) { return res; } // No match from the cache. Go to the network. Note that this is not an 'await' // call, networkFetch is the actual Promise. This is due to timeout handling. const [timeoutFetch, networkFetch] = this.networkFetchWithTimeout(req); res = yield timeoutFetch; // Since fetch() will always return a response, undefined indicates a timeout. if (res === undefined) { // The request timed out. Return a Gateway Timeout error. res = this.adapter.newResponse(null, { status: 504, statusText: 'Gateway Timeout' }); // Cache the network response eventually. ctx.waitUntil(this.safeCacheResponse(req, networkFetch, lru)); } else { // The request completed in time, so cache it inline with the response flow. yield this.safeCacheResponse(req, res, lru); } return res; }); } handleFetchWithFreshness(req, ctx, lru) { return __awaiter(this, void 0, void 0, function* () { // Start with a network fetch. const [timeoutFetch, networkFetch] = this.networkFetchWithTimeout(req); let res; // If that fetch errors, treat it as a timed out request. try { res = yield timeoutFetch; } catch (_a) { res = undefined; } // If the network fetch times out or errors, fall back on the cache. if (res === undefined) { ctx.waitUntil(this.safeCacheResponse(req, networkFetch, lru, true)); // Ignore the age, the network response will be cached anyway due to the // behavior of freshness. const fromCache = yield this.loadFromCache(req, lru); res = (fromCache !== null) ? fromCache.res : null; } else { yield this.safeCacheResponse(req, res, lru, true); } // Either the network fetch didn't time out, or the cache yielded a usable response. // In either case, use it. if (res !== null) { return res; } // No response in the cache. No choice but to fall back on the full network fetch. return networkFetch; }); } networkFetchWithTimeout(req) { // If there is a timeout configured, race a timeout Promise with the network fetch. // Otherwise, just fetch from the network directly. if (this.config.timeoutMs !== undefined) { const networkFetch = this.scope.fetch(req); const safeNetworkFetch = (() => __awaiter(this, void 0, void 0, function* () { try { return yield networkFetch; } catch (_a) { return this.adapter.newResponse(null, { status: 504, statusText: 'Gateway Timeout', }); } }))(); const networkFetchUndefinedError = (() => __awaiter(this, void 0, void 0, function* () { try { return yield networkFetch; } catch (_b) { return undefined; } }))(); // Construct a Promise for the timeout. const timeout = this.adapter.timeout(this.config.timeoutMs); // Race that with the network fetch. This will either be a Response, or `undefined` // in the event that the request errored or timed out. return [Promise.race([networkFetchUndefinedError, timeout]), safeNetworkFetch]; } else { const networkFetch = this.safeFetch(req); // Do a plain fetch. return [networkFetch, networkFetch]; } } safeCacheResponse(req, resOrPromise, lru, okToCacheOpaque) { return __awaiter(this, void 0, void 0, function* () { try { const res = yield resOrPromise; try { yield this.cacheResponse(req, res, lru, okToCacheOpaque); } catch (err) { // Saving the API response failed. This could be a result of a full storage. // Since this data is cached lazily and temporarily, continue serving clients as usual. this.debugHandler.log(err, `DataGroup(${this.config.name}@${this.config.version}).safeCacheResponse(${req.url}, status: ${res.status})`); // TODO: Better detect/handle full storage; e.g. using // [navigator.storage](https://developer.mozilla.org/en-US/docs/Web/API/NavigatorStorage/storage). } } catch (_a) { // Request failed // TODO: Handle this error somehow? } }); } loadFromCache(req, lru) { return __awaiter(this, void 0, void 0, function* () { // Look for a response in the cache. If one exists, return it. const cache = yield this.cache; let res = yield cache.match(req, this.config.cacheQueryOptions); if (res !== undefined) { // A response was found in the cache, but its age is not yet known. Look it up. try { const ageTable = yield this.ageTable; const age = this.adapter.time - (yield ageTable.read(req.url)).age; // If the response is young enough, use it. if (age <= this.config.maxAge) { // Successful match from the cache. Use the response, after marking it as having // been accessed. lru.accessed(req.url); return { res, age }; } // Otherwise, or if there was an error, assume the response is expired, and evict it. } catch (_a) { // Some error getting the age for the response. Assume it's expired. } lru.remove(req.url); yield this.clearCacheForUrl(req.url); // TODO: avoid duplicate in event of network timeout, maybe. yield this.syncLru(); } return null; }); } /** * Operation for caching the response from the server. This has to happen all * at once, so that the cache and LRU tracking remain in sync. If the network request * completes before the timeout, this logic will be run inline with the response flow. * If the request times out on the server, an error will be returned but the real network * request will still be running in the background, to be cached when it completes. */ cacheResponse(req, res, lru, okToCacheOpaque = false) { return __awaiter(this, void 0, void 0, function* () { // Only cache successful responses. if (!(res.ok || (okToCacheOpaque && res.type === 'opaque'))) { return; } // If caching this response would make the cache exceed its maximum size, evict something // first. if (lru.size >= this.config.maxSize) { // The cache is too big, evict something. const evictedUrl = lru.pop(); if (evictedUrl !== null) { yield this.clearCacheForUrl(evictedUrl); } } // TODO: evaluate for possible race conditions during flaky network periods. // Mark this resource as having been accessed recently. This ensures it won't be evicted // until enough other resources are requested that it falls off the end of the LRU chain. lru.accessed(req.url); // Store the response in the cache (cloning because the browser will consume // the body during the caching operation). yield (yield this.cache).put(req, res.clone()); // Store the age of the cache. const ageTable = yield this.ageTable; yield ageTable.write(req.url, { age: this.adapter.time }); // Sync the LRU chain to non-volatile storage. yield this.syncLru(); }); } /** * Delete all of the saved state which this group uses to track resources. */ cleanup() { return __awaiter(this, void 0, void 0, function* () { // Remove both the cache and the database entries which track LRU stats. yield Promise.all([ this.scope.caches.delete(`${this.prefix}:dynamic:${this.config.name}:cache`), this.db.delete(`${this.prefix}:dynamic:${this.config.name}:age`), this.db.delete(`${this.prefix}:dynamic:${this.config.name}:lru`), ]); }); } /** * Clear the state of the cache for a particular resource. * * This doesn't remove the resource from the LRU table, that is assumed to have * been done already. This clears the GET and HEAD versions of the request from * the cache itself, as well as the metadata stored in the age table. */ clearCacheForUrl(url) { return __awaiter(this, void 0, void 0, function* () { const [cache, ageTable] = yield Promise.all([this.cache, this.ageTable]); yield Promise.all([ cache.delete(this.adapter.newRequest(url, { method: 'GET' }), this.config.cacheQueryOptions), cache.delete(this.adapter.newRequest(url, { method: 'HEAD' }), this.config.cacheQueryOptions), ageTable.delete(url), ]); }); } safeFetch(req) { return __awaiter(this, void 0, void 0, function* () { try { return this.scope.fetch(req); } catch (_a) { return this.adapter.newResponse(null, { status: 504, statusText: 'Gateway Timeout', }); } }); } } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ const BACKWARDS_COMPATIBILITY_NAVIGATION_URLS = [ { positive: true, regex: '^/.*$' }, { positive: false, regex: '^/.*\\.[^/]*$' }, { positive: false, regex: '^/.*__' }, ]; /** * A specific version of the application, identified by a unique manifest * as determined by its hash. * * Each `AppVersion` can be thought of as a published version of the app * that can be installed as an update to any previously installed versions. */ class AppVersion { constructor(scope, adapter, database, idle, debugHandler, manifest, manifestHash) { this.scope = scope; this.adapter = adapter; this.database = database; this.idle = idle; this.debugHandler = debugHandler; this.manifest = manifest; this.manifestHash = manifestHash; /** * A Map of absolute URL paths (`/foo.txt`) to the known hash of their contents (if available). */ this.hashTable = new Map(); /** * The normalized URL to the file that serves as the index page to satisfy navigation requests. * Usually this is `/index.html`. */ this.indexUrl = this.adapter.normalizeUrl(this.manifest.index); /** * Tracks whether the manifest has encountered any inconsistencies. */ this._okay = true; // The hashTable within the manifest is an Object - convert it to a Map for easier lookups. Object.keys(this.manifest.hashTable).forEach(url => { this.hashTable.set(adapter.normalizeUrl(url), this.manifest.hashTable[url]); }); // Process each `AssetGroup` declared in the manifest. Each declared group gets an `AssetGroup` // instance // created for it, of a type that depends on the configuration mode. this.assetGroups = (manifest.assetGroups || []).map(config => { // Every asset group has a cache that's prefixed by the manifest hash and the name of the // group. const prefix = `${adapter.cacheNamePrefix}:${this.manifestHash}:assets`; // Check the caching mode, which determines when resources will be fetched/updated. switch (config.installMode) { case 'prefetch': return new PrefetchAssetGroup(this.scope, this.adapter, this.idle, config, this.hashTable, this.database, prefix); case 'lazy': return new LazyAssetGroup(this.scope, this.adapter, this.idle, config, this.hashTable, this.database, prefix); } }); // Process each `DataGroup` declared in the manifest. this.dataGroups = (manifest.dataGroups || []) .map(config => new DataGroup(this.scope, this.adapter, config, this.database, this.debugHandler, `${adapter.cacheNamePrefix}:${config.version}:data`)); // This keeps backwards compatibility with app versions without navigation urls. // Fix: https://github.com/angular/angular/issues/27209 manifest.navigationUrls = manifest.navigationUrls || BACKWARDS_COMPATIBILITY_NAVIGATION_URLS; // Create `include`/`exclude` RegExps for the `navigationUrls` declared in the manifest. const includeUrls = manifest.navigationUrls.filter(spec => spec.positive); const excludeUrls = manifest.navigationUrls.filter(spec => !spec.positive); this.navigationUrls = { include: includeUrls.map(spec => new RegExp(spec.regex)), exclude: excludeUrls.map(spec => new RegExp(spec.regex)), }; } get okay() { return this._okay; } /** * Fully initialize this version of the application. If this Promise resolves successfully, all * required * data has been safely downloaded. */ initializeFully(updateFrom) { return __awaiter(this, void 0, void 0, function* () { try { // Fully initialize each asset group, in series. Starts with an empty Promise, // and waits for the previous groups to have been initialized before initializing // the next one in turn. yield this.assetGroups.reduce((previous, group) => __awaiter(this, void 0, void 0, function* () { // Wait for the previous groups to complete initialization. If there is a // failure, this will throw, and each subsequent group will throw, until the // whole sequence fails. yield previous; // Initialize this group. return group.initializeFully(updateFrom); }), Promise.resolve()); } catch (err) { this._okay = false; throw err; } }); } handleFetch(req, context) { return __awaiter(this, void 0, void 0, function* () { // Check the request against each `AssetGroup` in sequence. If an `AssetGroup` can't handle the // request, // it will return `null`. Thus, the first non-null response is the SW's answer to the request. // So reduce // the group list, keeping track of a possible response. If there is one, it gets passed // through, and if // not the next group is consulted to produce a candidate response. const asset = yield this.assetGroups.reduce((potentialResponse, group) => __awaiter(this, void 0, void 0, function* () { // Wait on the previous potential response. If it's not null, it should just be passed // through. const resp = yield potentialResponse; if (resp !== null) { return resp; } // No response has been found yet. Maybe this group will have one. return group.handleFetch(req, context); }), Promise.resolve(null)); // The result of the above is the asset response, if there is any, or null otherwise. Return the // asset // response if there was one. If not, check with the data caching groups. if (asset !== null) { return asset; } // Perform the same reduction operation as above, but this time processing // the data caching groups. const data = yield this.dataGroups.reduce((potentialResponse, group) => __awaiter(this, void 0, void 0, function* () { const resp = yield potentialResponse; if (resp !== null) { return resp; } return group.handleFetch(req, context); }), Promise.resolve(null)); // If the data caching group returned a response, go with it. if (data !== null) { return data; } // Next, check if this is a navigation request for a route. Detect circular // navigations by checking if the request URL is the same as the index URL. if (this.adapter.normalizeUrl(req.url) !== this.indexUrl && this.isNavigationRequest(req)) { if (this.manifest.navigationRequestStrategy === 'freshness') { // For navigation requests the freshness was configured. The request will always go trough // the network and fallback to default `handleFetch` behavior in case of failure. try { return yield this.scope.fetch(req); } catch (_a) { // Navigation request failed - application is likely offline. // Proceed forward to the default `handleFetch` behavior, where // `indexUrl` will be requested and it should be available in the cache. } } // This was a navigation request. Re-enter `handleFetch` with a request for // the URL. return this.handleFetch(this.adapter.newRequest(this.indexUrl), context); } return null; }); } /** * Determine whether the request is a navigation request. * Takes into account: Request mode, `Accept` header, `navigationUrls` patterns. */ isNavigationRequest(req) { if (req.mode !== 'navigate') { return false; } if (!this.acceptsTextHtml(req)) { return false; } const urlPrefix = this.scope.registration.scope.replace(/\/$/, ''); const url = req.url.startsWith(urlPrefix) ? req.url.substr(urlPrefix.length) : req.url; const urlWithoutQueryOrHash = url.replace(/[?#].*$/, ''); return this.navigationUrls.include.some(regex => regex.test(urlWithoutQueryOrHash)) && !this.navigationUrls.exclude.some(regex => regex.test(urlWithoutQueryOrHash)); } /** * Check this version for a given resource with a particular hash. */ lookupResourceWithHash(url, hash) { return __awaiter(this, void 0, void 0, function* () { // Verify that this version has the requested resource cached. If not, // there's no point in trying. if (!this.hashTable.has(url)) { return null; } // Next, check whether the resource has the correct hash. If not, any cached // response isn't usable. if (this.hashTable.get(url) !== hash) { return null; } const cacheState = yield this.lookupResourceWithoutHash(url); return cacheState && cacheState.response; }); } /** * Check this version for a given resource regardless of its hash. */ lookupResourceWithoutHash(url) { // Limit the search to asset groups, and only scan the cache, don't // load resources from the network. return this.assetGroups.reduce((potentialResponse, group) => __awaiter(this, void 0, void 0, function* () { const resp = yield potentialResponse; if (resp !== null) { return resp; } // fetchFromCacheOnly() avoids any network fetches, and returns the // full set of cache data, not just the Response. return group.fetchFromCacheOnly(url); }), Promise.resolve(null)); } /** * List all unhashed resources from all asset groups. */ previouslyCachedResources() { return this.assetGroups.reduce((resources, group) => __awaiter(this, void 0, void 0, function* () { return (yield resources).concat(yield group.unhashedResources()); }), Promise.resolve([])); } recentCacheStatus(url) { return __awaiter(this, void 0, void 0, function* () { return this.assetGroups.reduce((current, group) => __awaiter(this, void 0, void 0, function* () { const status = yield current; if (status === UpdateCacheStatus.CACHED) { return status; } const groupStatus = yield group.cacheStatus(url); if (groupStatus === UpdateCacheStatus.NOT_CACHED) { return status; } return groupStatus; }), Promise.resolve(UpdateCacheStatus.NOT_CACHED)); }); } /** * Erase this application version, by cleaning up all the caches. */ cleanup() { return __awaiter(this, void 0, void 0, function* () { yield Promise.all(this.assetGroups.map(group => group.cleanup())); yield Promise.all(this.dataGroups.map(group => group.cleanup())); }); } /** * Get the opaque application data which was provided with the manifest. */ get appData() { return this.manifest.appData || null; } /** * Check whether a request accepts `text/html` (based on the `Accept` header). */ acceptsTextHtml(req) { const accept = req.headers.get('Accept'); if (accept === null) { return false; } const values = accept.split(','); return values.some(value => value.trim().toLowerCase() === 'text/html'); } } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ const DEBUG_LOG_BUFFER_SIZE = 100; class DebugHandler { constructor(driver, adapter) { this.driver = driver; this.adapter = adapter; // There are two debug log message arrays. debugLogA records new debugging messages. // Once it reaches DEBUG_LOG_BUFFER_SIZE, the array is moved to debugLogB and a new // array is assigned to debugLogA. This ensures that insertion to the debug log is // always O(1) no matter the number of logged messages, and that the total number // of messages in the log never exceeds 2 * DEBUG_LOG_BUFFER_SIZE. this.debugLogA = []; this.debugLogB = []; } handleFetch(req) { return __awaiter(this, void 0, void 0, function* () { const [state, versions, idle] = yield Promise.all([ this.driver.debugState(), this.driver.debugVersions(), this.driver.debugIdleState(), ]); const msgState = `NGSW Debug Info: Driver state: ${state.state} (${state.why}) Latest manifest hash: ${state.latestHash || 'none'} Last update check: ${this.since(state.lastUpdateCheck)}`; const msgVersions = versions .map(version => `=== Version ${version.hash} === Clients: ${version.clients.join(', ')}`) .join('\n\n'); const msgIdle = `=== Idle Task Queue === Last update tick: ${this.since(idle.lastTrigger)} Last update run: ${this.since(idle.lastRun)} Task queue: ${idle.queue.map(v => ' * ' + v).join('\n')} Debug log: ${this.formatDebugLog(this.debugLogB)} ${this.formatDebugLog(this.debugLogA)} `; return this.adapter.newResponse(`${msgState} ${msgVersions} ${msgIdle}`, { headers: this.adapter.newHeaders({ 'Content-Type': 'text/plain' }) }); }); } since(time) { if (time === null) { return 'never'; } let age = this.adapter.time - time; const days = Math.floor(age / 86400000); age = age % 86400000; const hours = Math.floor(age / 3600000); age = age % 3600000; const minutes = Math.floor(age / 60000); age = age % 60000; const seconds = Math.floor(age / 1000); const millis = age % 1000; return '' + (days > 0 ? `${days}d` : '') + (hours > 0 ? `${hours}h` : '') + (minutes > 0 ? `${minutes}m` : '') + (seconds > 0 ? `${seconds}s` : '') + (millis > 0 ? `${millis}u` : ''); } log(value, context = '') { // Rotate the buffers if debugLogA has grown too large. if (this.debugLogA.length === DEBUG_LOG_BUFFER_SIZE) { this.debugLogB = this.debugLogA; this.debugLogA = []; } // Convert errors to string for logging. if (typeof value !== 'string') { value = this.errorToString(value); } // Log the message. this.debugLogA.push({ value, time: this.adapter.time, context }); } errorToString(err) { return `${err.name}(${err.message}, ${err.stack})`; } formatDebugLog(log) { return log.map(entry => `[${this.since(entry.time)}] ${entry.value} ${entry.context}`) .join('\n'); } } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ class IdleScheduler { constructor(adapter, threshold, debug) { this.adapter = adapter; this.threshold = threshold; this.debug = debug; this.queue = []; this.scheduled = null; this.empty = Promise.resolve(); this.emptyResolve = null; this.lastTrigger = null; this.lastRun = null; } trigger() { return __awaiter(this, void 0, void 0, function* () { this.lastTrigger = this.adapter.time; if (this.queue.length === 0) { return; } if (this.scheduled !== null) { this.scheduled.cancel = true; } const scheduled = { cancel: false, }; this.scheduled = scheduled; yield this.adapter.timeout(this.threshold); if (scheduled.cancel) { return; } this.scheduled = null; yield this.execute(); }); } execute() { return __awaiter(this, void 0, void 0, function* () { this.lastRun = this.adapter.time; while (this.queue.length > 0) { const queue = this.queue; this.queue = []; yield queue.reduce((previous, task) => __awaiter(this, void 0, void 0, function* () { yield previous; try { yield task.run(); } catch (err) { this.debug.log(err, `while running idle task ${task.desc}`); } }), Promise.resolve()); } if (this.emptyResolve !== null) { this.emptyResolve(); this.emptyResolve = null; } this.empty = Promise.resolve(); }); } schedule(desc, run) { this.queue.push({ desc, run }); if (this.emptyResolve === null) { this.empty = new Promise(resolve => { this.emptyResolve = resolve; }); } } get size() { return this.queue.length; } get taskDescriptions() { return this.queue.map(task => task.desc); } } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ function hashManifest(manifest) { return sha1(JSON.stringify(manifest)); } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ function isMsgCheckForUpdates(msg) { return msg.action === 'CHECK_FOR_UPDATES'; } function isMsgActivateUpdate(msg) { return msg.action === 'ACTIVATE_UPDATE'; } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ const IDLE_THRESHOLD = 5000; const SUPPORTED_CONFIG_VERSION = 1; const NOTIFICATION_OPTION_NAMES = [ 'actions', 'badge', 'body', 'data', 'dir', 'icon', 'image', 'lang', 'renotify', 'requireInteraction', 'silent', 'tag', 'timestamp', 'title', 'vibrate' ]; var DriverReadyState = /*@__PURE__*/ (function (DriverReadyState) { // The SW is operating in a normal mode, responding to all traffic. DriverReadyState[DriverReadyState["NORMAL"] = 0] = "NORMAL"; // The SW does not have a clean installation of the latest version of the app, but older // cached versions are safe to use so long as they don't try to fetch new dependencies. // This is a degraded state. DriverReadyState[DriverReadyState["EXISTING_CLIENTS_ONLY"] = 1] = "EXISTING_CLIENTS_ONLY"; // The SW has decided that caching is completely unreliable, and is forgoing request // handling until the next restart. DriverReadyState[DriverReadyState["SAFE_MODE"] = 2] = "SAFE_MODE"; return DriverReadyState; })({}); class Driver { constructor(scope, adapter, db) { // Set up all the event handlers that the SW needs. this.scope = scope; this.adapter = adapter; this.db = db; /** * Tracks the current readiness condition under which the SW is operating. This controls * whether the SW attempts to respond to some or all requests. */ this.state = DriverReadyState.NORMAL; this.stateMessage = '(nominal)'; /** * Tracks whether the SW is in an initialized state or not. Before initialization, * it's not legal to respond to requests. */ this.initialized = null; /** * Maps client IDs to the manifest hash of the application version being used to serve * them. If a client ID is not present here, it has not yet been assigned a version. * * If a ManifestHash appears here, it is also present in the `versions` map below. */ this.clientVersionMap = new Map(); /** * Maps manifest hashes to instances of `AppVersion` for those manifests. */ this.versions = new Map(); /** * The latest version fetched from the server. * * Valid after initialization has completed. */ this.latestHash = null; this.lastUpdateCheck = null; /** * Whether there is a check for updates currently scheduled due to navigation. */ this.scheduledNavUpdateCheck = false; /** * Keep track of whether we have logged an invalid `only-if-cached` request. * (See `.onFetch()` for details.) */ this.loggedInvalidOnlyIfCachedRequest = false; this.ngswStatePath = this.adapter.parseUrl('ngsw/state', this.scope.registration.scope).path; // The install event is triggered when the service worker is first installed. this.scope.addEventListener('install', (event) => { // SW code updates are separate from application updates, so code updates are // almost as straightforward as restarting the SW. Because of this, it's always // safe to skip waiting until application tabs are closed, and activate the new // SW version immediately. event.waitUntil(this.scope.skipWaiting()); }); // The activate event is triggered when this version of the service worker is // first activated. this.scope.addEventListener('activate', (event) => { event.waitUntil((() => __awaiter(this, void 0, void 0, function* () { // As above, it's safe to take over from existing clients immediately, since the new SW // version will continue to serve the old application. yield this.scope.clients.claim(); // Once all clients have been taken over, we can delete caches used by old versions of // `@angular/service-worker`, which are no longer needed. This can happen in the background. this.idle.schedule('activate: cleanup-old-sw-caches', () => __awaiter(this, void 0, void 0, function* () { try { yield this.cleanupOldSwCaches(); } catch (err) { // Nothing to do - cleanup failed. Just log it. this.debugger.log(err, 'cleanupOldSwCaches @ activate: cleanup-old-sw-caches'); } })); }))()); // Rather than wait for the first fetch event, which may not arrive until // the next time the application is loaded, the SW takes advantage of the // activation event to schedule initialization. However, if this were run // in the context of the 'activate' event, waitUntil() here would cause fetch // events to block until initialization completed. Thus, the SW does a // postMessage() to itself, to schedule a new event loop iteration with an // entirely separate event context. The SW will be kept alive by waitUntil() // within that separate context while initialization proceeds, while at the // same time the activation event is allowed to resolve and traffic starts // being served. if (this.scope.registration.active !== null) { this.scope.registration.active.postMessage({ action: 'INITIALIZE' }); } }); // Handle the fetch, message, and push events. this.scope.addEventListener('fetch', (event) => this.onFetch(event)); this.scope.addEventListener('message', (event) => this.onMessage(event)); this.scope.addEventListener('push', (event) => this.onPush(event)); this.scope.addEventListener('notificationclick', (event) => this.onClick(event)); // The debugger generates debug pages in response to debugging requests. this.debugger = new DebugHandler(this, this.adapter); // The IdleScheduler will execute idle tasks after a given delay. this.idle = new IdleScheduler(this.adapter, IDLE_THRESHOLD, this.debugger); } /** * The handler for fetch events. * * This is the transition point between the synchronous event handler and the * asynchronous execution that eventually resolves for respondWith() and waitUntil(). */ onFetch(event) { const req = event.request; const scopeUrl = this.scope.registration.scope; const requestUrlObj = this.adapter.parseUrl(req.url, scopeUrl); if (req.headers.has('ngsw-bypass') || /[?&]ngsw-bypass(?:[=&]|$)/i.test(requestUrlObj.search)) { return; } // The only thing that is served unconditionally is the debug page. if (requestUrlObj.path === this.ngswStatePath) { // Allow the debugger to handle the request, but don't affect SW state in any other way. event.respondWith(this.debugger.handleFetch(req)); return; } // If the SW is in a broken state where it's not safe to handle requests at all, // returning causes the request to fall back on the network. This is preferred over // `respondWith(fetch(req))` because the latter still shows in DevTools that the // request was handled by the SW. if (this.state === DriverReadyState.SAFE_MODE) { // Even though the worker is in safe mode, idle tasks still need to happen so // things like update checks, etc. can take place. event.waitUntil(this.idle.trigger()); return; } // Although "passive mixed content" (like images) only produces a warning without a // ServiceWorker, fetching it via a ServiceWorker results in an error. Let such requests be // handled by the browser, since handling with the ServiceWorker would fail anyway. // See https://github.com/angular/angular/issues/23012#issuecomment-376430187 for more details. if (requestUrlObj.origin.startsWith('http:') && scopeUrl.startsWith('https:')) { // Still, log the incident for debugging purposes. this.debugger.log(`Ignoring passive mixed content request: Driver.fetch(${req.url})`); return; } // When opening DevTools in Chrome, a request is made for the current URL (and possibly related // resources, e.g. scripts) with `cache: 'only-if-cached'` and `mode: 'no-cors'`. These request // will eventually fail, because `only-if-cached` is only allowed to be used with // `mode: 'same-origin'`. // This is likely a bug in Chrome DevTools. Avoid handling such requests. // (See also https://github.com/angular/angular/issues/22362.) // TODO(gkalpak): Remove once no longer necessary (i.e. fixed in Chrome DevTools). if (req.cache === 'only-if-cached' && req.mode !== 'same-origin') { // Log the incident only the first time it happens, to avoid spamming the logs. if (!this.loggedInvalidOnlyIfCachedRequest) { this.loggedInvalidOnlyIfCachedRequest = true; this.debugger.log(`Ignoring invalid request: 'only-if-cached' can be set only with 'same-origin' mode`, `Driver.fetch(${req.url}, cache: ${req.cache}, mode: ${req.mode})`); } return; } // Past this point, the SW commits to handling the request itself. This could still // fail (and result in `state` being set to `SAFE_MODE`), but even in that case the // SW will still deliver a response. event.respondWith(this.handleFetch(event)); } /** * The handler for message events. */ onMessage(event) { // Ignore message events when the SW is in safe mode, for now. if (this.state === DriverReadyState.SAFE_MODE) { return; } // If the message doesn't have the expected signature, ignore it. const data = event.data; if (!data || !data.action) { return; } event.waitUntil((() => __awaiter(this, void 0, void 0, function* () { // Initialization is the only event which is sent directly from the SW to itself, and thus // `event.source` is not a `Client`. Handle it here, before the check for `Client` sources. if (data.action === 'INITIALIZE') { return this.ensureInitialized(event); } // Only messages from true clients are accepted past this point. // This is essentially a typecast. if (!this.adapter.isClient(event.source)) { return; } // Handle the message and keep the SW alive until it's handled. yield this.ensureInitialized(event); yield this.handleMessage(data, event.source); }))()); } onPush(msg) { // Push notifications without data have no effect. if (!msg.data) { return; } // Handle the push and keep the SW alive until it's handled. msg.waitUntil(this.handlePush(msg.data.json())); } onClick(event) { // Handle the click event and keep the SW alive until it's handled. event.waitUntil(this.handleClick(event.notification, event.action)); } ensureInitialized(event) { return __awaiter(this, void 0, void 0, function* () { // Since the SW may have just been started, it may or may not have been initialized already. // `this.initialized` will be `null` if initialization has not yet been attempted, or will be a // `Promise` which will resolve (successfully or unsuccessfully) if it has. if (this.initialized !== null) { return this.initialized; } // Initialization has not yet been attempted, so attempt it. This should only ever happen once // per SW instantiation. try { this.initialized = this.initialize(); yield this.initialized; } catch (error) { // If initialization fails, the SW needs to enter a safe state, where it declines to respond // to network requests. this.state = DriverReadyState.SAFE_MODE; this.stateMessage = `Initialization failed due to error: ${errorToString(error)}`; throw error; } finally { // Regardless if initialization succeeded, background tasks still need to happen. event.waitUntil(this.idle.trigger()); } }); } handleMessage(msg, from) { return __awaiter(this, void 0, void 0, function* () { if (isMsgCheckForUpdates(msg)) { const action = (() => __awaiter(this, void 0, void 0, function* () { yield this.checkForUpdate(); }))(); yield this.reportStatus(from, action, msg.statusNonce); } else if (isMsgActivateUpdate(msg)) { yield this.reportStatus(from, this.updateClient(from), msg.statusNonce); } }); } handlePush(data) { return __awaiter(this, void 0, void 0, function* () { yield this.broadcast({ type: 'PUSH', data, }); if (!data.notification || !data.notification.title) { return; } const desc = data.notification; let options = {}; NOTIFICATION_OPTION_NAMES.filter(name => desc.hasOwnProperty(name)) .forEach(name => options[name] = desc[name]); yield this.scope.registration.showNotification(desc['title'], options); }); } handleClick(notification, action) { return __awaiter(this, void 0, void 0, function* () { notification.close(); const options = {}; // The filter uses `name in notification` because the properties are on the prototype so // hasOwnProperty does not work here NOTIFICATION_OPTION_NAMES.filter(name => name in notification) .forEach(name => options[name] = notification[name]); yield this.broadcast({ type: 'NOTIFICATION_CLICK', data: { action, notification: options }, }); }); } reportStatus(client, promise, nonce) { return __awaiter(this, void 0, void 0, function* () { const response = { type: 'STATUS', nonce, status: true }; try { yield promise; client.postMessage(response); } catch (e) { client.postMessage(Object.assign(Object.assign({}, response), { status: false, error: e.toString() })); } }); } updateClient(client) { return __awaiter(this, void 0, void 0, function* () { // Figure out which version the client is on. If it's not on the latest, // it needs to be moved. const existing = this.clientVersionMap.get(client.id); if (existing === this.latestHash) { // Nothing to do, this client is already on the latest version. return; } // Switch the client over. let previous = undefined; // Look up the application data associated with the existing version. If there // isn't any, fall back on using the hash. if (existing !== undefined) { const existingVersion = this.versions.get(existing); previous = this.mergeHashWithAppData(existingVersion.manifest, existing); } // Set the current version used by the client, and sync the mapping to disk. this.clientVersionMap.set(client.id, this.latestHash); yield this.sync(); // Notify the client about this activation. const current = this.versions.get(this.latestHash); const notice = { type: 'UPDATE_ACTIVATED', previous, current: this.mergeHashWithAppData(current.manifest, this.latestHash), }; client.postMessage(notice); }); } handleFetch(event) { return __awaiter(this, void 0, void 0, function* () { try { // Ensure the SW instance has been initialized. yield this.ensureInitialized(event); } catch (_a) { // Since the SW is already committed to responding to the currently active request, // respond with a network fetch. return this.safeFetch(event.request); } // On navigation requests, check for new updates. if (event.request.mode === 'navigate' && !this.scheduledNavUpdateCheck) { this.scheduledNavUpdateCheck = true; this.idle.schedule('check-updates-on-navigation', () => __awaiter(this, void 0, void 0, function* () { this.scheduledNavUpdateCheck = false; yield this.checkForUpdate(); })); } // Decide which version of the app to use to serve this request. This is asynchronous as in // some cases, a record will need to be written to disk about the assignment that is made. const appVersion = yield this.assignVersion(event); // Bail out if (appVersion === null) { event.waitUntil(this.idle.trigger()); return this.safeFetch(event.request); } let res = null; try { // Handle the request. First try the AppVersion. If that doesn't work, fall back on the // network. res = yield appVersion.handleFetch(event.request, event); } catch (err) { if (err.isUnrecoverableState) { yield this.notifyClientsAboutUnrecoverableState(appVersion, err.message); } if (err.isCritical) { // Something went wrong with the activation of this version. yield this.versionFailed(appVersion, err); event.waitUntil(this.idle.trigger()); return this.safeFetch(event.request); } throw err; } // The AppVersion will only return null if the manifest doesn't specify what to do about this // request. In that case, just fall back on the network. if (res === null) { event.waitUntil(this.idle.trigger()); return this.safeFetch(event.request); } // Trigger the idle scheduling system. The Promise returned by trigger() will resolve after // a specific amount of time has passed. If trigger() hasn't been called again by then (e.g. // on a subsequent request), the idle task queue will be drained and the Promise won't resolve // until that operation is complete as well. event.waitUntil(this.idle.trigger()); // The AppVersion returned a usable response, so return it. return res; }); } /** * Attempt to quickly reach a state where it's safe to serve responses. */ initialize() { return __awaiter(this, void 0, void 0, function* () { // On initialization, all of the serialized state is read out of the 'control' // table. This includes: // - map of hashes to manifests of currently loaded application versions // - map of client IDs to their pinned versions // - record of the most recently fetched manifest hash // // If these values don't exist in the DB, then this is the either the first time // the SW has run or the DB state has been wiped or is inconsistent. In that case, // load a fresh copy of the manifest and reset the state from scratch. // Open up the DB table. const table = yield this.db.open('control'); // Attempt to load the needed state from the DB. If this fails, the catch {} block // will populate these variables with freshly constructed values. let manifests, assignments, latest; try { // Read them from the DB simultaneously. [manifests, assignments, latest] = yield Promise.all([ table.read('manifests'), table.read('assignments'), table.read('latest'), ]); // Make sure latest manifest is correctly installed. If not (e.g. corrupted data), // it could stay locked in EXISTING_CLIENTS_ONLY or SAFE_MODE state. if (!this.versions.has(latest.latest) && !manifests.hasOwnProperty(latest.latest)) { this.debugger.log(`Missing manifest for latest version hash ${latest.latest}`, 'initialize: read from DB'); throw new Error(`Missing manifest for latest hash ${latest.latest}`); } // Successfully loaded from saved state. This implies a manifest exists, so // the update check needs to happen in the background. this.idle.schedule('init post-load (update, cleanup)', () => __awaiter(this, void 0, void 0, function* () { yield this.checkForUpdate(); try { yield this.cleanupCaches(); } catch (err) { // Nothing to do - cleanup failed. Just log it. this.debugger.log(err, 'cleanupCaches @ init post-load'); } })); } catch (_) { // Something went wrong. Try to start over by fetching a new manifest from the // server and building up an empty initial state. const manifest = yield this.fetchLatestManifest(); const hash = hashManifest(manifest); manifests = {}; manifests[hash] = manifest; assignments = {}; latest = { latest: hash }; // Save the initial state to the DB. yield Promise.all([ table.write('manifests', manifests), table.write('assignments', assignments), table.write('latest', latest), ]); } // At this point, either the state has been loaded successfully, or fresh state // with a new copy of the manifest has been produced. At this point, the `Driver` // can have its internals hydrated from the state. // Initialize the `versions` map by setting each hash to a new `AppVersion` instance // for that manifest. Object.keys(manifests).forEach((hash) => { const manifest = manifests[hash]; // If the manifest is newly initialized, an AppVersion may have already been // created for it. if (!this.versions.has(hash)) { this.versions.set(hash, new AppVersion(this.scope, this.adapter, this.db, this.idle, this.debugger, manifest, hash)); } }); // Map each client ID to its associated hash. Along the way, verify that the hash // is still valid for that client ID. It should not be possible for a client to // still be associated with a hash that was since removed from the state. Object.keys(assignments).forEach((clientId) => { const hash = assignments[clientId]; if (this.versions.has(hash)) { this.clientVersionMap.set(clientId, hash); } else { this.clientVersionMap.set(clientId, latest.latest); this.debugger.log(`Unknown version ${hash} mapped for client ${clientId}, using latest instead`, `initialize: map assignments`); } }); // Set the latest version. this.latestHash = latest.latest; // Finally, assert that the latest version is in fact loaded. if (!this.versions.has(latest.latest)) { throw new Error(`Invariant violated (initialize): latest hash ${latest.latest} has no known manifest`); } // Finally, wait for the scheduling of initialization of all versions in the // manifest. Ordinarily this just schedules the initializations to happen during // the next idle period, but in development mode this might actually wait for the // full initialization. // If any of these initializations fail, versionFailed() will be called either // synchronously or asynchronously to handle the failure and re-map clients. yield Promise.all(Object.keys(manifests).map((hash) => __awaiter(this, void 0, void 0, function* () { try { // Attempt to schedule or initialize this version. If this operation is // successful, then initialization either succeeded or was scheduled. If // it fails, then full initialization was attempted and failed. yield this.scheduleInitialization(this.versions.get(hash)); } catch (err) { this.debugger.log(err, `initialize: schedule init of ${hash}`); return false; } }))); }); } lookupVersionByHash(hash, debugName = 'lookupVersionByHash') { // The version should exist, but check just in case. if (!this.versions.has(hash)) { throw new Error(`Invariant violated (${debugName}): want AppVersion for ${hash} but not loaded`); } return this.versions.get(hash); } /** * Decide which version of the manifest to use for the event. */ assignVersion(event) { return __awaiter(this, void 0, void 0, function* () { // First, check whether the event has a (non empty) client ID. If it does, the version may // already be associated. const clientId = event.clientId; if (clientId) { // Check if there is an assigned client id. if (this.clientVersionMap.has(clientId)) { // There is an assignment for this client already. const hash = this.clientVersionMap.get(clientId); let appVersion = this.lookupVersionByHash(hash, 'assignVersion'); // Ordinarily, this client would be served from its assigned version. But, if this // request is a navigation request, this client can be updated to the latest // version immediately. if (this.state === DriverReadyState.NORMAL && hash !== this.latestHash && appVersion.isNavigationRequest(event.request)) { // Update this client to the latest version immediately. if (this.latestHash === null) { throw new Error(`Invariant violated (assignVersion): latestHash was null`); } const client = yield this.scope.clients.get(clientId); yield this.updateClient(client); appVersion = this.lookupVersionByHash(this.latestHash, 'assignVersion'); } // TODO: make sure the version is valid. return appVersion; } else { // This is the first time this client ID has been seen. Whether the SW is in a // state to handle new clients depends on the current readiness state, so check // that first. if (this.state !== DriverReadyState.NORMAL) { // It's not safe to serve new clients in the current state. It's possible that // this is an existing client which has not been mapped yet (see below) but // even if that is the case, it's invalid to make an assignment to a known // invalid version, even if that assignment was previously implicit. Return // undefined here to let the caller know that no assignment is possible at // this time. return null; } // It's safe to handle this request. Two cases apply. Either: // 1) the browser assigned a client ID at the time of the navigation request, and // this is truly the first time seeing this client, or // 2) a navigation request came previously from the same client, but with no client // ID attached. Browsers do this to avoid creating a client under the origin in // the event the navigation request is just redirected. // // In case 1, the latest version can safely be used. // In case 2, the latest version can be used, with the assumption that the previous // navigation request was answered under the same version. This assumption relies // on the fact that it's unlikely an update will come in between the navigation // request and requests for subsequent resources on that page. // First validate the current state. if (this.latestHash === null) { throw new Error(`Invariant violated (assignVersion): latestHash was null`); } // Pin this client ID to the current latest version, indefinitely. this.clientVersionMap.set(clientId, this.latestHash); yield this.sync(); // Return the latest `AppVersion`. return this.lookupVersionByHash(this.latestHash, 'assignVersion'); } } else { // No client ID was associated with the request. This must be a navigation request // for a new client. First check that the SW is accepting new clients. if (this.state !== DriverReadyState.NORMAL) { return null; } // Serve it with the latest version, and assume that the client will actually get // associated with that version on the next request. // First validate the current state. if (this.latestHash === null) { throw new Error(`Invariant violated (assignVersion): latestHash was null`); } // Return the latest `AppVersion`. return this.lookupVersionByHash(this.latestHash, 'assignVersion'); } }); } fetchLatestManifest(ignoreOfflineError = false) { return __awaiter(this, void 0, void 0, function* () { const res = yield this.safeFetch(this.adapter.newRequest('ngsw.json?ngsw-cache-bust=' + Math.random())); if (!res.ok) { if (res.status === 404) { yield this.deleteAllCaches(); yield this.scope.registration.unregister(); } else if ((res.status === 503 || res.status === 504) && ignoreOfflineError) { return null; } throw new Error(`Manifest fetch failed! (status: ${res.status})`); } this.lastUpdateCheck = this.adapter.time; return res.json(); }); } deleteAllCaches() { return __awaiter(this, void 0, void 0, function* () { yield (yield this.scope.caches.keys()) // The Chrome debugger is not able to render the syntax properly when the // code contains backticks. This is a known issue in Chrome and they have an // open [issue](https://bugs.chromium.org/p/chromium/issues/detail?id=659515) for that. // As a work-around for the time being, we can use \\ ` at the end of the line. .filter(key => key.startsWith(`${this.adapter.cacheNamePrefix}:`)) // ` .reduce((previous, key) => __awaiter(this, void 0, void 0, function* () { yield Promise.all([ previous, this.scope.caches.delete(key), ]); }), Promise.resolve()); }); } /** * Schedule the SW's attempt to reach a fully prefetched state for the given AppVersion * when the SW is not busy and has connectivity. This returns a Promise which must be * awaited, as under some conditions the AppVersion might be initialized immediately. */ scheduleInitialization(appVersion) { return __awaiter(this, void 0, void 0, function* () { const initialize = () => __awaiter(this, void 0, void 0, function* () { try { yield appVersion.initializeFully(); } catch (err) { this.debugger.log(err, `initializeFully for ${appVersion.manifestHash}`); yield this.versionFailed(appVersion, err); } }); // TODO: better logic for detecting localhost. if (this.scope.registration.scope.indexOf('://localhost') > -1) { return initialize(); } this.idle.schedule(`initialization(${appVersion.manifestHash})`, initialize); }); } versionFailed(appVersion, err) { return __awaiter(this, void 0, void 0, function* () { // This particular AppVersion is broken. First, find the manifest hash. const broken = Array.from(this.versions.entries()).find(([hash, version]) => version === appVersion); if (broken === undefined) { // This version is no longer in use anyway, so nobody cares. return; } const brokenHash = broken[0]; const affectedClients = Array.from(this.clientVersionMap.entries()) .filter(([clientId, hash]) => hash === brokenHash) .map(([clientId]) => clientId); // TODO: notify affected apps. // The action taken depends on whether the broken manifest is the active (latest) or not. // If so, the SW cannot accept new clients, but can continue to service old ones. if (this.latestHash === brokenHash) { // The latest manifest is broken. This means that new clients are at the mercy of the // network, but caches continue to be valid for previous versions. This is // unfortunate but unavoidable. this.state = DriverReadyState.EXISTING_CLIENTS_ONLY; this.stateMessage = `Degraded due to: ${errorToString(err)}`; // Cancel the binding for the affected clients. affectedClients.forEach(clientId => this.clientVersionMap.delete(clientId)); } else { // The latest version is viable, but this older version isn't. The only // possible remedy is to stop serving the older version and go to the network. // Put the affected clients on the latest version. affectedClients.forEach(clientId => this.clientVersionMap.set(clientId, this.latestHash)); } try { yield this.sync(); } catch (err2) { // We are already in a bad state. No need to make things worse. // Just log the error and move on. this.debugger.log(err2, `Driver.versionFailed(${err.message || err})`); } }); } setupUpdate(manifest, hash) { return __awaiter(this, void 0, void 0, function* () { const newVersion = new AppVersion(this.scope, this.adapter, this.db, this.idle, this.debugger, manifest, hash); // Firstly, check if the manifest version is correct. if (manifest.configVersion !== SUPPORTED_CONFIG_VERSION) { yield this.deleteAllCaches(); yield this.scope.registration.unregister(); throw new Error(`Invalid config version: expected ${SUPPORTED_CONFIG_VERSION}, got ${manifest.configVersion}.`); } // Cause the new version to become fully initialized. If this fails, then the // version will not be available for use. yield newVersion.initializeFully(this); // Install this as an active version of the app. this.versions.set(hash, newVersion); // Future new clients will use this hash as the latest version. this.latestHash = hash; // If we are in `EXISTING_CLIENTS_ONLY` mode (meaning we didn't have a clean copy of the last // latest version), we can now recover to `NORMAL` mode and start accepting new clients. if (this.state === DriverReadyState.EXISTING_CLIENTS_ONLY) { this.state = DriverReadyState.NORMAL; this.stateMessage = '(nominal)'; } yield this.sync(); yield this.notifyClientsAboutUpdate(newVersion); }); } checkForUpdate() { return __awaiter(this, void 0, void 0, function* () { let hash = '(unknown)'; try { const manifest = yield this.fetchLatestManifest(true); if (manifest === null) { // Client or server offline. Unable to check for updates at this time. // Continue to service clients (existing and new). this.debugger.log('Check for update aborted. (Client or server offline.)'); return false; } hash = hashManifest(manifest); // Check whether this is really an update. if (this.versions.has(hash)) { return false; } yield this.setupUpdate(manifest, hash); return true; } catch (err) { this.debugger.log(err, `Error occurred while updating to manifest ${hash}`); this.state = DriverReadyState.EXISTING_CLIENTS_ONLY; this.stateMessage = `Degraded due to failed initialization: ${errorToString(err)}`; return false; } }); } /** * Synchronize the existing state to the underlying database. */ sync() { return __awaiter(this, void 0, void 0, function* () { // Open up the DB table. const table = yield this.db.open('control'); // Construct a serializable map of hashes to manifests. const manifests = {}; this.versions.forEach((version, hash) => { manifests[hash] = version.manifest; }); // Construct a serializable map of client ids to version hashes. const assignments = {}; this.clientVersionMap.forEach((hash, clientId) => { assignments[clientId] = hash; }); // Record the latest entry. Since this is a sync which is necessarily happening after // initialization, latestHash should always be valid. const latest = { latest: this.latestHash, }; // Synchronize all of these. yield Promise.all([ table.write('manifests', manifests), table.write('assignments', assignments), table.write('latest', latest), ]); }); } cleanupCaches() { return __awaiter(this, void 0, void 0, function* () { // Query for all currently active clients, and list the client ids. This may skip // some clients in the browser back-forward cache, but not much can be done about // that. const activeClients = (yield this.scope.clients.matchAll()).map(client => client.id); // A simple list of client ids that the SW has kept track of. Subtracting // activeClients from this list will result in the set of client ids which are // being tracked but are no longer used in the browser, and thus can be cleaned up. const knownClients = Array.from(this.clientVersionMap.keys()); // Remove clients in the clientVersionMap that are no longer active. knownClients.filter(id => activeClients.indexOf(id) === -1) .forEach(id => this.clientVersionMap.delete(id)); // Next, determine the set of versions which are still used. All others can be // removed. const usedVersions = new Set(); this.clientVersionMap.forEach((version, _) => usedVersions.add(version)); // Collect all obsolete versions by filtering out used versions from the set of all versions. const obsoleteVersions = Array.from(this.versions.keys()) .filter(version => !usedVersions.has(version) && version !== this.latestHash); // Remove all the versions which are no longer used. yield obsoleteVersions.reduce((previous, version) => __awaiter(this, void 0, void 0, function* () { // Wait for the other cleanup operations to complete. yield previous; // Try to get past the failure of one particular version to clean up (this // shouldn't happen, but handle it just in case). try { // Get ahold of the AppVersion for this particular hash. const instance = this.versions.get(version); // Delete it from the canonical map. this.versions.delete(version); // Clean it up. yield instance.cleanup(); } catch (err) { // Oh well? Not much that can be done here. These caches will be removed when // the SW revs its format version, which happens from time to time. this.debugger.log(err, `cleanupCaches - cleanup ${version}`); } }), Promise.resolve()); // Commit all the changes to the saved state. yield this.sync(); }); } /** * Delete caches that were used by older versions of `@angular/service-worker` to avoid running * into storage quota limitations imposed by browsers. * (Since at this point the SW has claimed all clients, it is safe to remove those caches.) */ cleanupOldSwCaches() { return __awaiter(this, void 0, void 0, function* () { const cacheNames = yield this.scope.caches.keys(); const oldSwCacheNames = cacheNames.filter(name => /^ngsw:(?!\/)/.test(name)); yield Promise.all(oldSwCacheNames.map(name => this.scope.caches.delete(name))); }); } /** * Determine if a specific version of the given resource is cached anywhere within the SW, * and fetch it if so. */ lookupResourceWithHash(url, hash) { return Array // Scan through the set of all cached versions, valid or otherwise. It's safe to do such // lookups even for invalid versions as the cached version of a resource will have the // same hash regardless. .from(this.versions.values()) // Reduce the set of versions to a single potential result. At any point along the // reduction, if a response has already been identified, then pass it through, as no // future operation could change the response. If no response has been found yet, keep // checking versions until one is or until all versions have been exhausted. .reduce((prev, version) => __awaiter(this, void 0, void 0, function* () { // First, check the previous result. If a non-null result has been found already, just // return it. if ((yield prev) !== null) { return prev; } // No result has been found yet. Try the next `AppVersion`. return version.lookupResourceWithHash(url, hash); }), Promise.resolve(null)); } lookupResourceWithoutHash(url) { return __awaiter(this, void 0, void 0, function* () { yield this.initialized; const version = this.versions.get(this.latestHash); return version ? version.lookupResourceWithoutHash(url) : null; }); } previouslyCachedResources() { return __awaiter(this, void 0, void 0, function* () { yield this.initialized; const version = this.versions.get(this.latestHash); return version ? version.previouslyCachedResources() : []; }); } recentCacheStatus(url) { return __awaiter(this, void 0, void 0, function* () { const version = this.versions.get(this.latestHash); return version ? version.recentCacheStatus(url) : UpdateCacheStatus.NOT_CACHED; }); } mergeHashWithAppData(manifest, hash) { return { hash, appData: manifest.appData, }; } notifyClientsAboutUnrecoverableState(appVersion, reason) { return __awaiter(this, void 0, void 0, function* () { const broken = Array.from(this.versions.entries()).find(([hash, version]) => version === appVersion); if (broken === undefined) { // This version is no longer in use anyway, so nobody cares. return; } const brokenHash = broken[0]; const affectedClients = Array.from(this.clientVersionMap.entries()) .filter(([clientId, hash]) => hash === brokenHash) .map(([clientId]) => clientId); affectedClients.forEach((clientId) => __awaiter(this, void 0, void 0, function* () { const client = yield this.scope.clients.get(clientId); client.postMessage({ type: 'UNRECOVERABLE_STATE', reason }); })); }); } notifyClientsAboutUpdate(next) { return __awaiter(this, void 0, void 0, function* () { yield this.initialized; const clients = yield this.scope.clients.matchAll(); yield clients.reduce((previous, client) => __awaiter(this, void 0, void 0, function* () { yield previous; // Firstly, determine which version this client is on. const version = this.clientVersionMap.get(client.id); if (version === undefined) { // Unmapped client - assume it's the latest. return; } if (version === this.latestHash) { // Client is already on the latest version, no need for a notification. return; } const current = this.versions.get(version); // Send a notice. const notice = { type: 'UPDATE_AVAILABLE', current: this.mergeHashWithAppData(current.manifest, version), available: this.mergeHashWithAppData(next.manifest, this.latestHash), }; client.postMessage(notice); }), Promise.resolve()); }); } broadcast(msg) { return __awaiter(this, void 0, void 0, function* () { const clients = yield this.scope.clients.matchAll(); clients.forEach(client => { client.postMessage(msg); }); }); } debugState() { return __awaiter(this, void 0, void 0, function* () { return { state: DriverReadyState[this.state], why: this.stateMessage, latestHash: this.latestHash, lastUpdateCheck: this.lastUpdateCheck, }; }); } debugVersions() { return __awaiter(this, void 0, void 0, function* () { // Build list of versions. return Array.from(this.versions.keys()).map(hash => { const version = this.versions.get(hash); const clients = Array.from(this.clientVersionMap.entries()) .filter(([clientId, version]) => version === hash) .map(([clientId, version]) => clientId); return { hash, manifest: version.manifest, clients, status: '', }; }); }); } debugIdleState() { return __awaiter(this, void 0, void 0, function* () { return { queue: this.idle.taskDescriptions, lastTrigger: this.idle.lastTrigger, lastRun: this.idle.lastRun, }; }); } safeFetch(req) { return __awaiter(this, void 0, void 0, function* () { try { return yield this.scope.fetch(req); } catch (err) { this.debugger.log(err, `Driver.fetch(${req.url})`); return this.adapter.newResponse(null, { status: 504, statusText: 'Gateway Timeout', }); } }); } } /** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ const scope = self; const adapter = new Adapter(scope.registration.scope); const driver = new Driver(scope, adapter, new CacheDatabase(scope, adapter)); }()); ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/dist/SportsStore/ngsw.json ================================================ { "configVersion": 1, "timestamp": 1606394111257, "index": "/index.html", "assetGroups": [ { "name": "app", "installMode": "prefetch", "updateMode": "prefetch", "cacheQueryOptions": { "ignoreVary": true }, "urls": [ "/4.31e080808fcb56f7ac65.js", "/favicon.ico", "/index.html", "/main.51b6248b65201a3b0124.js", "/manifest.webmanifest", "/polyfills.bf99d438b005d57b2b31.js", "/runtime.f31414a4bbd349807336.js", "/styles.e64f6c6459bd207237f5.css" ], "patterns": [] }, { "name": "assets", "installMode": "lazy", "updateMode": "prefetch", "cacheQueryOptions": { "ignoreVary": true }, "urls": [ "/assets/icons/icon-128x128.png", "/assets/icons/icon-144x144.png", "/assets/icons/icon-152x152.png", "/assets/icons/icon-192x192.png", "/assets/icons/icon-384x384.png", "/assets/icons/icon-512x512.png", "/assets/icons/icon-72x72.png", "/assets/icons/icon-96x96.png", "/fa-brands-400.1437eef49e3db661f92c.ttf", "/fa-brands-400.3825c40fd00d9bbb76b7.eot", "/fa-brands-400.55faa7ef298ebafcc322.svg", "/fa-brands-400.9a01a31d6767f82529dc.woff2", "/fa-brands-400.e1c1a88e6228f902435e.woff", "/fa-regular-400.5fab4ed5c3745c12c7e1.woff2", "/fa-regular-400.814c2c571f030686e71c.ttf", "/fa-regular-400.acdccc059cdf7b4063e9.woff", "/fa-regular-400.eb99d5076e8ce45ccfa1.eot", "/fa-regular-400.fa5f132deb163050a148.svg", "/fa-solid-900.0f27e9b933cc50abbbba.woff2", "/fa-solid-900.8618686494a5c8092120.ttf", "/fa-solid-900.a0b3c6d0d774520787d8.eot", "/fa-solid-900.a84653d4fe0072d182b6.svg", "/fa-solid-900.afbdcbccd6861d9cdc38.woff" ], "patterns": [] } ], "dataGroups": [ { "name": "api-product", "patterns": [ "\\/api\\/products" ], "strategy": "performance", "maxSize": 100, "maxAge": 432000000, "cacheQueryOptions": { "ignoreVary": true }, "version": 1 } ], "hashTable": { "/4.31e080808fcb56f7ac65.js": "dca69536be8b3292a1413d4f4ac3d5f42004e6d0", "/assets/icons/icon-128x128.png": "dae3b6ed49bdaf4327b92531d4b5b4a5d30c7532", "/assets/icons/icon-144x144.png": "b0bd89982e08f9bd2b642928f5391915b74799a7", "/assets/icons/icon-152x152.png": "7479a9477815dfd9668d60f8b3b2fba709b91310", "/assets/icons/icon-192x192.png": "1abd80d431a237a853ce38147d8c63752f10933b", "/assets/icons/icon-384x384.png": "329749cd6393768d3131ed6304c136b1ca05f2fd", "/assets/icons/icon-512x512.png": "559d9c4318b45a1f2b10596bbb4c960fe521dbcc", "/assets/icons/icon-72x72.png": "c457e56089a36952cd67156f9996bc4ce54a5ed9", "/assets/icons/icon-96x96.png": "3914125a4b445bf111c5627875fc190f560daa41", "/fa-brands-400.1437eef49e3db661f92c.ttf": "d9b2f287f46c950737c434e4153777968a73cecc", "/fa-brands-400.3825c40fd00d9bbb76b7.eot": "e6feaa7a93ad42acb348529c9a684a0cf5cbf2ee", "/fa-brands-400.55faa7ef298ebafcc322.svg": "8730dd14f32b5c64c935b7d0d583589703fc6dd7", "/fa-brands-400.9a01a31d6767f82529dc.woff2": "3a175545f961094f3614f208f2166187b642355f", "/fa-brands-400.e1c1a88e6228f902435e.woff": "3023db69a482111f7a17f29cee621a933cc5f4b9", "/fa-regular-400.5fab4ed5c3745c12c7e1.woff2": "37b761c26708037d19664cebea70416852487087", "/fa-regular-400.814c2c571f030686e71c.ttf": "bb89a35e00d0ba8a5382cc66809abe3d5cd3e932", "/fa-regular-400.acdccc059cdf7b4063e9.woff": "dc2741902e041fc638697d76733b6252c68f1f99", "/fa-regular-400.eb99d5076e8ce45ccfa1.eot": "af1d634a307219795957412a586abaf626f4829b", "/fa-regular-400.fa5f132deb163050a148.svg": "53983550b89268aff9bbe00cbde3ef423c00716f", "/fa-solid-900.0f27e9b933cc50abbbba.woff2": "af776f52d579da211590e0691d554b88a69dfe61", "/fa-solid-900.8618686494a5c8092120.ttf": "481530e4da272092a90415b3403b4e533416e295", "/fa-solid-900.a0b3c6d0d774520787d8.eot": "e13aaeda706af85d9382d7c39f5a3f79d612cd31", "/fa-solid-900.a84653d4fe0072d182b6.svg": "cae06b2de99cc3f05225d54eb630352dc40dc6ef", "/fa-solid-900.afbdcbccd6861d9cdc38.woff": "120dab7a8a93da819ab3025da6a9f3d3ccd65cce", "/favicon.ico": "22f6a4a3bcaafafb0254e0f2fa4ceb89e505e8b2", "/index.html": "bd0641bc5713bf53ce67d5b228f981c5943be0f5", "/main.51b6248b65201a3b0124.js": "21f14fbc1f54d918ffb1be7c9eff539b33844011", "/manifest.webmanifest": "328bbeae8cffe1ff408cfe4ef3104fb37fb4a126", "/polyfills.bf99d438b005d57b2b31.js": "763cd3b34dfa4600ebb9d9588ec7116988e98920", "/runtime.f31414a4bbd349807336.js": "c7f0b84c275f61cf76b9cb6f80a64bb0c61d52a7", "/styles.e64f6c6459bd207237f5.css": "1017185550980471b59fcf89d9a2f85fc6bb2f26" }, "navigationUrls": [ { "positive": true, "regex": "^\\/.*$" } ], "navigationRequestStrategy": "performance" } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/dist/SportsStore/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/dist/SportsStore/runtime.f31414a4bbd349807336.js ================================================ !function(e){function r(r){for(var n,i,a=r[0],c=r[1],l=r[2],p=0,s=[];p { self.skipWaiting(); }); self.addEventListener('activate', event => { event.waitUntil(self.clients.claim()); self.registration.unregister().then(() => { console.log('NGSW Safety Worker - unregistered old service worker'); }); }); ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/dist/SportsStore/styles.e64f6c6459bd207237f5.css ================================================ /*! * Bootstrap v4.4.1 (https://getbootstrap.com/) * Copyright 2011-2019 The Bootstrap Authors * Copyright 2011-2019 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,:after,:before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:initial;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{font-style:normal;line-height:inherit}address,dl,ol,ul{margin-bottom:1rem}dl,ol,ul{margin-top:0}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:initial}a:hover{color:#0056b3;text-decoration:underline}a:not([href]),a:not([href]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{border-style:none}img,svg{vertical-align:middle}svg{overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:initial}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem}.display-1,.display-2{font-weight:300;line-height:1.2}.display-2{font-size:5.5rem}.display-3{font-size:4.5rem}.display-3,.display-4{font-weight:300;line-height:1.2}.display-4{font-size:3.5rem}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer:before{content:"\2014\00A0"}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{white-space:nowrap}.sr-only-focusable:active,.sr-only-focusable:focus{white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} /*! * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) */.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s linear infinite}.fa-pulse{animation:fa-spin 1s steps(8) infinite}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\f952"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\f907"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\f913"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\f955"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\f91a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\f956"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\f91e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\f957"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\f941"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\f949"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:Font Awesome\ 5 Brands;font-style:normal;font-weight:400;font-display:auto;src:url(fa-brands-400.3825c40fd00d9bbb76b7.eot);src:url(fa-brands-400.3825c40fd00d9bbb76b7.eot?#iefix) format("embedded-opentype"),url(fa-brands-400.9a01a31d6767f82529dc.woff2) format("woff2"),url(fa-brands-400.e1c1a88e6228f902435e.woff) format("woff"),url(fa-brands-400.1437eef49e3db661f92c.ttf) format("truetype"),url(fa-brands-400.55faa7ef298ebafcc322.svg#fontawesome) format("svg")}.fab{font-family:Font Awesome\ 5 Brands}@font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:400;font-display:auto;src:url(fa-regular-400.eb99d5076e8ce45ccfa1.eot);src:url(fa-regular-400.eb99d5076e8ce45ccfa1.eot?#iefix) format("embedded-opentype"),url(fa-regular-400.5fab4ed5c3745c12c7e1.woff2) format("woff2"),url(fa-regular-400.acdccc059cdf7b4063e9.woff) format("woff"),url(fa-regular-400.814c2c571f030686e71c.ttf) format("truetype"),url(fa-regular-400.fa5f132deb163050a148.svg#fontawesome) format("svg")}.fab,.far{font-weight:400}@font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:900;font-display:auto;src:url(fa-solid-900.a0b3c6d0d774520787d8.eot);src:url(fa-solid-900.a0b3c6d0d774520787d8.eot?#iefix) format("embedded-opentype"),url(fa-solid-900.0f27e9b933cc50abbbba.woff2) format("woff2"),url(fa-solid-900.afbdcbccd6861d9cdc38.woff) format("woff"),url(fa-solid-900.8618686494a5c8092120.ttf) format("truetype"),url(fa-solid-900.a84653d4fe0072d182b6.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:Font Awesome\ 5 Free}.fa,.fas{font-weight:900} ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('SportsStore app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/SportsStore'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/ngsw-config.json ================================================ { "$schema": "./node_modules/@angular/service-worker/config/schema.json", "index": "/index.html", "assetGroups": [ { "name": "app", "installMode": "prefetch", "resources": { "files": [ "/favicon.ico", "/index.html", "/manifest.webmanifest", "/*.css", "/*.js" ] } }, { "name": "assets", "installMode": "lazy", "updateMode": "prefetch", "resources": { "files": [ "/assets/**", "/*.(eot|svg|cur|jpg|png|webp|gif|otf|ttf|woff|woff2|ani)", "/font/*" ] } } ], "dataGroups": [ { "name": "api-product", "urls": ["/api/products"], "cacheConfig" : { "maxSize": 100, "maxAge": "5d" } }], "navigationUrls": [ "/**" ] } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/package.json ================================================ { "name": "sports-store", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server data.js -p 3500 -m authMiddleware.js" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "@angular/service-worker": "~11.0.1", "@fortawesome/fontawesome-free": "^5.12.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "connect-history-api-fallback": "^1.6.0", "express": "^4.17.1", "https": "^1.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "json-server": "^0.16.0", "jsonwebtoken": "^8.5.1", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/server.js ================================================ const express = require("express"); const https = require("https"); const fs = require("fs"); const history = require("connect-history-api-fallback"); const jsonServer = require("json-server"); const bodyParser = require('body-parser'); const auth = require("./authMiddleware"); const router = jsonServer.router("serverdata.json"); const enableHttps = false; const ssloptions = {} if (enableHttps) { ssloptions.cert = fs.readFileSync("./ssl/sportsstore.crt"); ssloptions.key = fs.readFileSync("./ssl/sportsstore.pem"); } const app = express(); app.use(bodyParser.json()); app.use(auth); app.use("/api", router); app.use(history()); app.use("/", express.static("./dist/SportsStore")); app.listen(80, () => console.log("HTTP Server running on port 80")); if (enableHttps) { https.createServer(ssloptions, app).listen(443, () => console.log("HTTPS Server running on port 443")); } else { console.log("HTTPS disabled") } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/serverdata.json ================================================ { "products": [ { "id": 1, "name": "Kayak", "category": "Watersports", "description": "A boat for one person", "price": 275 }, { "id": 2, "name": "Lifejacket", "category": "Watersports", "description": "Protective and fashionable", "price": 48.95 }, { "id": 3, "name": "Soccer Ball", "category": "Soccer", "description": "FIFA-approved size and weight", "price": 19.50 }, { "id": 4, "name": "Corner Flags", "category": "Soccer", "description": "Give your playing field a professional touch", "price": 34.95 }, { "id": 5, "name": "Stadium", "category": "Soccer", "description": "Flat-packed 35,000-seat stadium", "price": 79500 }, { "id": 6, "name": "Thinking Cap", "category": "Chess", "description": "Improve brain efficiency by 75%", "price": 16 }, { "id": 7, "name": "Unsteady Chair", "category": "Chess", "description": "Secretly give your opponent a disadvantage", "price": 29.95 }, { "id": 8, "name": "Human Chess Board", "category": "Chess", "description": "A fun game for the family", "price": 75 }, { "id": 9, "name": "Bling Bling King", "category": "Chess", "description": "Gold-plated, diamond-studded King", "price": 1200 } ], "orders": [] } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/admin.component.html ================================================

================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/admin.component.ts ================================================ import { Component } from "@angular/core"; import { Router } from "@angular/router"; import { AuthService } from "../model/auth.service"; @Component({ templateUrl: "admin.component.html" }) export class AdminComponent { constructor(private auth: AuthService, private router: Router) { } logout() { this.auth.clear(); this.router.navigateByUrl("/"); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/admin.module.ts ================================================ import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; import { FormsModule } from "@angular/forms"; import { RouterModule } from "@angular/router"; import { AuthComponent } from "./auth.component"; import { AdminComponent } from "./admin.component"; import { AuthGuard } from "./auth.guard"; import { ProductTableComponent } from "./productTable.component"; import { ProductEditorComponent } from "./productEditor.component"; import { OrderTableComponent } from "./orderTable.component"; let routing = RouterModule.forChild([ { path: "auth", component: AuthComponent }, { path: "main", component: AdminComponent, canActivate: [AuthGuard], children: [ { path: "products/:mode/:id", component: ProductEditorComponent }, { path: "products/:mode", component: ProductEditorComponent }, { path: "products", component: ProductTableComponent }, { path: "orders", component: OrderTableComponent }, { path: "**", redirectTo: "products" } ] }, { path: "**", redirectTo: "auth" } ]); @NgModule({ imports: [CommonModule, FormsModule, routing], providers: [AuthGuard], declarations: [AuthComponent, AdminComponent, ProductTableComponent, ProductEditorComponent, OrderTableComponent] }) export class AdminModule {} ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/auth.component.html ================================================

SportsStore Admin

{{errorMessage}}
================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/auth.component.ts ================================================ import { Component } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Router } from "@angular/router"; import { AuthService } from "../model/auth.service"; @Component({ templateUrl: "auth.component.html" }) export class AuthComponent { public username: string; public password: string; public errorMessage: string; constructor(private router: Router, private auth: AuthService) { } authenticate(form: NgForm) { if (form.valid) { this.auth.authenticate(this.username, this.password) .subscribe(response => { if (response) { this.router.navigateByUrl("/admin/main"); } this.errorMessage = "Authentication Failed"; }) } else { this.errorMessage = "Form Data Invalid"; } } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/auth.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { AuthService } from "../model/auth.service"; @Injectable() export class AuthGuard { constructor(private router: Router, private auth: AuthService) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { if (!this.auth.authenticated) { this.router.navigateByUrl("/admin/auth"); return false; } return true; } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/orderTable.component.html ================================================
NameZipCart
There are no orders
{{o.name}}{{o.zip}} ProductQuantity
{{line.product.name}} {{line.quantity}}
================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/orderTable.component.ts ================================================ import { Component } from "@angular/core"; import { Order } from "../model/order.model"; import { OrderRepository } from "../model/order.repository"; @Component({ templateUrl: "orderTable.component.html" }) export class OrderTableComponent { includeShipped = false; constructor(private repository: OrderRepository) {} getOrders(): Order[] { return this.repository.getOrders() .filter(o => this.includeShipped || !o.shipped); } markShipped(order: Order) { order.shipped = true; this.repository.updateOrder(order); } delete(id: number) { this.repository.deleteOrder(id); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/productEditor.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/productEditor.component.ts ================================================ import { Component } from "@angular/core"; import { Router, ActivatedRoute } from "@angular/router"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; @Component({ templateUrl: "productEditor.component.html" }) export class ProductEditorComponent { editing: boolean = false; product: Product = new Product(); constructor(private repository: ProductRepository, private router: Router, activeRoute: ActivatedRoute) { this.editing = activeRoute.snapshot.params["mode"] == "edit"; if (this.editing) { Object.assign(this.product, repository.getProduct(activeRoute.snapshot.params["id"])); } } save(form: NgForm) { this.repository.saveProduct(this.product); this.router.navigateByUrl("/admin/main/products"); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/productTable.component.html ================================================
IDNameCategoryPrice
{{p.id}} {{p.name}} {{p.category}} {{p.price | currency:"USD":"symbol":"2.2-2"}}
================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/admin/productTable.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; @Component({ templateUrl: "productTable.component.html" }) export class ProductTableComponent { constructor(private repository: ProductRepository) { } getProducts(): Product[] { return this.repository.getProducts(); } deleteProduct(id: number) { this.repository.deleteProduct(id); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", template: "" }) export class AppComponent { } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { AppComponent } from "./app.component"; import { StoreModule } from "./store/store.module"; import { StoreComponent } from "./store/store.component"; import { CheckoutComponent } from "./store/checkout.component"; import { CartDetailComponent } from "./store/cartDetail.component"; import { RouterModule } from "@angular/router"; import { StoreFirstGuard } from "./storeFirst.guard"; import { ServiceWorkerModule } from '@angular/service-worker'; import { environment } from '../environments/environment'; @NgModule({ imports: [BrowserModule, StoreModule, RouterModule.forRoot([ { path: "store", component: StoreComponent, canActivate: [StoreFirstGuard] }, { path: "cart", component: CartDetailComponent, canActivate: [StoreFirstGuard] }, { path: "checkout", component: CheckoutComponent, canActivate: [StoreFirstGuard] }, { path: "admin", loadChildren: () => import("./admin/admin.module") .then(m => m.AdminModule), canActivate: [StoreFirstGuard] }, { path: "**", redirectTo: "/store" } ]), ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production })], providers: [StoreFirstGuard], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/auth.service.ts ================================================ import { Injectable } from "@angular/core"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class AuthService { constructor(private datasource: RestDataSource) {} authenticate(username: string, password: string): Observable { return this.datasource.authenticate(username, password); } get authenticated(): boolean { return this.datasource.auth_token != null; } clear() { this.datasource.auth_token = null; } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/cart.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class Cart { public lines: CartLine[] = []; public itemCount: number = 0; public cartPrice: number = 0; addLine(product: Product, quantity: number = 1) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity += quantity; } else { this.lines.push(new CartLine(product, quantity)); } this.recalculate(); } updateQuantity(product: Product, quantity: number) { let line = this.lines.find(line => line.product.id == product.id); if (line != undefined) { line.quantity = Number(quantity); } this.recalculate(); } removeLine(id: number) { let index = this.lines.findIndex(line => line.product.id == id); this.lines.splice(index, 1); this.recalculate(); } clear() { this.lines = []; this.itemCount = 0; this.cartPrice = 0; } private recalculate() { this.itemCount = 0; this.cartPrice = 0; this.lines.forEach(l => { this.itemCount += l.quantity; this.cartPrice += (l.quantity * l.product.price); }) } } export class CartLine { constructor(public product: Product, public quantity: number) {} get lineTotal() { return this.quantity * this.product.price; } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/connection.service.ts ================================================ import { Injectable } from "@angular/core"; import { Observable, Subject } from "rxjs"; @Injectable() export class ConnectionService { private connEvents: Subject; constructor() { this.connEvents = new Subject(); window.addEventListener("online", (e) => this.handleConnectionChange(e)); window.addEventListener("offline", (e) => this.handleConnectionChange(e)); } private handleConnectionChange(event) { this.connEvents.next(this.connected); } get connected() : boolean { return window.navigator.onLine; } get Changes(): Observable { return this.connEvents; } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { ProductRepository } from "./product.repository"; import { StaticDataSource } from "./static.datasource"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; import { OrderRepository } from "./order.repository"; import { RestDataSource } from "./rest.datasource"; import { HttpClientModule } from "@angular/common/http"; import { AuthService } from "./auth.service"; import { ConnectionService } from "./connection.service"; @NgModule({ imports: [HttpClientModule], providers: [ProductRepository, Cart, Order, OrderRepository, { provide: StaticDataSource, useClass: RestDataSource }, RestDataSource, AuthService, ConnectionService] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/order.model.ts ================================================ import { Injectable } from "@angular/core"; import { Cart } from "./cart.model"; @Injectable() export class Order { public id: number; public name: string; public address: string; public city: string; public state: string; public zip: string; public country: string; public shipped: boolean = false; constructor(public cart: Cart) { } clear() { this.id = null; this.name = this.address = this.city = null; this.state = this.zip = this.country = null; this.shipped = false; this.cart.clear(); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/order.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Observable } from "rxjs"; import { Order } from "./order.model"; //import { StaticDataSource } from "./static.datasource"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class OrderRepository { private orders: Order[] = []; private loaded: boolean = false; constructor(private dataSource: RestDataSource) { } loadOrders() { this.loaded = true; this.dataSource.getOrders() .subscribe(orders => this.orders = orders); } getOrders(): Order[] { if (!this.loaded) { this.loadOrders(); } return this.orders; } saveOrder(order: Order): Observable { return this.dataSource.saveOrder(order); } updateOrder(order: Order) { this.dataSource.updateOrder(order).subscribe(order => { this.orders.splice(this.orders. findIndex(o => o.id == order.id), 1, order); }); } deleteOrder(id: number) { this.dataSource.deleteOrder(id).subscribe(order => { this.orders.splice(this.orders.findIndex(o => id == o.id), 1); }); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/product.model.ts ================================================ export class Product { constructor( public id?: number, public name?: string, public category?: string, public description?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/product.repository.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; //import { StaticDataSource } from "./static.datasource"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class ProductRepository { private products: Product[] = []; private categories: string[] = []; constructor(private dataSource: RestDataSource) { dataSource.getProducts().subscribe(data => { this.products = data; this.categories = data.map(p => p.category) .filter((c, index, array) => array.indexOf(c) == index).sort(); }); } getProducts(category: string = null): Product[] { return this.products .filter(p => category == null || category == p.category); } getProduct(id: number): Product { return this.products.find(p => p.id == id); } getCategories(): string[] { return this.categories; } saveProduct(product: Product) { if (product.id == null || product.id == 0) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product) .subscribe(p => { this.products.splice(this.products. findIndex(p => p.id == product.id), 1, product); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(p => { this.products.splice(this.products. findIndex(p => p.id == id), 1); }) } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/rest.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { HttpClient } from "@angular/common/http"; import { Observable } from "rxjs"; import { Product } from "./product.model"; import { Cart } from "./cart.model"; import { Order } from "./order.model"; import { map } from "rxjs/operators"; import { HttpHeaders } from '@angular/common/http'; const PROTOCOL = "http"; const PORT = 3500; @Injectable() export class RestDataSource { baseUrl: string; auth_token: string; constructor(private http: HttpClient) { //this.baseUrl = `${PROTOCOL}://${location.hostname}:${PORT}/`; this.baseUrl = "/api/" } getProducts(): Observable { return this.http.get(this.baseUrl + "products"); } saveOrder(order: Order): Observable { return this.http.post(this.baseUrl + "orders", order); } authenticate(user: string, pass: string): Observable { return this.http.post(this.baseUrl + "login", { name: user, password: pass }).pipe(map(response => { this.auth_token = response.success ? response.token : null; return response.success; })); } saveProduct(product: Product): Observable { return this.http.post(this.baseUrl + "products", product, this.getOptions()); } updateProduct(product): Observable { return this.http.put(`${this.baseUrl}products/${product.id}`, product, this.getOptions()); } deleteProduct(id: number): Observable { return this.http.delete(`${this.baseUrl}products/${id}`, this.getOptions()); } getOrders(): Observable { return this.http.get(this.baseUrl + "orders", this.getOptions()); } deleteOrder(id: number): Observable { return this.http.delete(`${this.baseUrl}orders/${id}`, this.getOptions()); } updateOrder(order: Order): Observable { return this.http.put(`${this.baseUrl}orders/${order.id}`, order, this.getOptions()); } private getOptions() { return { headers: new HttpHeaders({ "Authorization": `Bearer<${this.auth_token}>` }) } } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable, from } from "rxjs"; import { Order } from "./order.model"; @Injectable() export class StaticDataSource { private products: Product[] = [ new Product(1, "Product 1", "Category 1", "Product 1 (Category 1)", 100), new Product(2, "Product 2", "Category 1", "Product 2 (Category 1)", 100), new Product(3, "Product 3", "Category 1", "Product 3 (Category 1)", 100), new Product(4, "Product 4", "Category 1", "Product 4 (Category 1)", 100), new Product(5, "Product 5", "Category 1", "Product 5 (Category 1)", 100), new Product(6, "Product 6", "Category 2", "Product 6 (Category 2)", 100), new Product(7, "Product 7", "Category 2", "Product 7 (Category 2)", 100), new Product(8, "Product 8", "Category 2", "Product 8 (Category 2)", 100), new Product(9, "Product 9", "Category 2", "Product 9 (Category 2)", 100), new Product(10, "Product 10", "Category 2", "Product 10 (Category 2)", 100), new Product(11, "Product 11", "Category 3", "Product 11 (Category 3)", 100), new Product(12, "Product 12", "Category 3", "Product 12 (Category 3)", 100), new Product(13, "Product 13", "Category 3", "Product 13 (Category 3)", 100), new Product(14, "Product 14", "Category 3", "Product 14 (Category 3)", 100), new Product(15, "Product 15", "Category 3", "Product 15 (Category 3)", 100), ]; getProducts(): Observable { return from([this.products]); } saveOrder(order: Order): Observable { console.log(JSON.stringify(order)); return from([order]); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/cartDetail.component.html ================================================

Your Cart

Quantity Product Price Subtotal
Your cart is empty
{{line.product.name}} {{line.product.price | currency:"USD":"symbol":"2.2-2"}} {{(line.lineTotal) | currency:"USD":"symbol":"2.2-2" }}
Total: {{cart.cartPrice | currency:"USD":"symbol":"2.2-2"}}
================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/cartDetail.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; import { ConnectionService } from "../model/connection.service"; @Component({ templateUrl: "cartDetail.component.html" }) export class CartDetailComponent { public connected: boolean = true; constructor(public cart: Cart, private connection: ConnectionService) { this.connected = this.connection.connected; connection.Changes.subscribe((state) => this.connected = state); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/cartSummary.component.html ================================================
Your cart: {{ cart.itemCount }} item(s) {{ cart.cartPrice | currency:"USD":"symbol":"2.2-2" }} (empty)
================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/cartSummary.component.ts ================================================ import { Component } from "@angular/core"; import { Cart } from "../model/cart.model"; @Component({ selector: "cart-summary", templateUrl: "cartSummary.component.html" }) export class CartSummaryComponent { constructor(public cart: Cart) { } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/checkout.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/checkout.component.html ================================================

Thanks!

Thanks for placing your order.

We'll ship your goods as soon as possible.

Please enter your name
Please enter your address
Please enter your city
Please enter your state
Please enter your zip/postal code
Please enter your country
================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/checkout.component.ts ================================================ import { Component } from "@angular/core"; import { NgForm } from "@angular/forms"; import { OrderRepository } from "../model/order.repository"; import { Order } from "../model/order.model"; @Component({ templateUrl: "checkout.component.html", styleUrls: ["checkout.component.css"] }) export class CheckoutComponent { orderSent: boolean = false; submitted: boolean = false; constructor(public repository: OrderRepository, public order: Order) {} submitOrder(form: NgForm) { this.submitted = true; if (form.valid) { this.repository.saveOrder(this.order).subscribe(order => { this.order.clear(); this.orderSent = true; this.submitted = false; }); } } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/counter.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, Attribute, SimpleChanges } from "@angular/core"; @Directive({ selector: "[counterOf]" }) export class CounterDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("counterOf") counter: number; ngOnChanges(changes: SimpleChanges) { this.container.clear(); for (let i = 0; i < this.counter; i++) { this.container.createEmbeddedView(this.template, new CounterDirectiveContext(i + 1)); } } } class CounterDirectiveContext { constructor(public $implicit: any) { } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/serverdata.json ================================================ { "products": [ { "id": 1, "name": "Kayak", "category": "Watersports", "description": "A boat for one person", "price": 275 }, { "id": 2, "name": "Lifejacket", "category": "Watersports", "description": "Protective and fashionable", "price": 48.95 }, { "id": 3, "name": "Soccer Ball", "category": "Soccer", "description": "FIFA-approved size and weight", "price": 19.50 }, { "id": 4, "name": "Corner Flags", "category": "Soccer", "description": "Give your playing field a professional touch", "price": 34.95 }, { "id": 5, "name": "Stadium", "category": "Soccer", "description": "Flat-packed 35,000-seat stadium", "price": 79500 }, { "id": 6, "name": "Thinking Cap", "category": "Chess", "description": "Improve brain efficiency by 75%", "price": 16 }, { "id": 7, "name": "Unsteady Chair", "category": "Chess", "description": "Secretly give your opponent a disadvantage", "price": 29.95 }, { "id": 8, "name": "Human Chess Board", "category": "Chess", "description": "A fun game for the family", "price": 75 }, { "id": 9, "name": "Bling Bling King", "category": "Chess", "description": "Gold-plated, diamond-studded King", "price": 1200 } ], "orders": [] } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/store.component.html ================================================

{{product.name}} {{ product.price | currency:"USD":"symbol":"2.2-2" }}

{{product.description}}
================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/store.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { ProductRepository } from "../model/product.repository"; import { Cart } from "../model/cart.model"; import { Router } from "@angular/router"; @Component({ selector: "store", templateUrl: "store.component.html" }) export class StoreComponent { public selectedCategory = null; public productsPerPage = 4; public selectedPage = 1; constructor(private repository: ProductRepository, private cart: Cart, private router: Router) { } get products(): Product[] { let pageIndex = (this.selectedPage - 1) * this.productsPerPage return this.repository.getProducts(this.selectedCategory) .slice(pageIndex, pageIndex + this.productsPerPage); } get categories(): string[] { return this.repository.getCategories(); } changeCategory(newCategory?: string) { this.selectedCategory = newCategory; } changePage(newPage: number) { this.selectedPage = newPage; } changePageSize(newSize: number) { this.productsPerPage = Number(newSize); this.changePage(1); } get pageCount(): number { return Math.ceil(this.repository .getProducts(this.selectedCategory).length / this.productsPerPage) } addProductToCart(product: Product) { this.cart.addLine(product); this.router.navigateByUrl("/cart"); } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/store/store.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { StoreComponent } from "./store.component"; import { CounterDirective } from "./counter.directive"; import { CartSummaryComponent } from "./cartSummary.component"; import { CartDetailComponent } from "./cartDetail.component"; import { CheckoutComponent } from "./checkout.component"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [ModelModule, BrowserModule, FormsModule, RouterModule], declarations: [StoreComponent, CounterDirective, CartSummaryComponent, CartDetailComponent, CheckoutComponent], exports: [StoreComponent, CartDetailComponent, CheckoutComponent] }) export class StoreModule { } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/app/storeFirst.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { StoreComponent } from "./store/store.component"; @Injectable() export class StoreFirstGuard { private firstNavigation = true; constructor(private router: Router) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { if (this.firstNavigation) { this.firstNavigation = false; if (route.component != StoreComponent) { this.router.navigateByUrl("/"); return false; } } return true; } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/index.html ================================================ SportsStore SportsStore Will Go Here ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/main.ts ================================================ 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) .catch(err => console.log(err)); ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/manifest.webmanifest ================================================ { "name": "SportsStore", "short_name": "SportsStore", "theme_color": "#1976d2", "background_color": "#fafafa", "display": "standalone", "scope": "./", "start_url": "./", "icons": [ { "src": "assets/icons/icon-72x72.png", "sizes": "72x72", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-96x96.png", "sizes": "96x96", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-128x128.png", "sizes": "128x128", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-144x144.png", "sizes": "144x144", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-152x152.png", "sizes": "152x152", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-192x192.png", "sizes": "192x192", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-384x384.png", "sizes": "384x384", "type": "image/png", "purpose": "maskable any" }, { "src": "assets/icons/icon-512x512.png", "sizes": "512x512", "type": "image/png", "purpose": "maskable any" } ] } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 10/SportsStore/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 11/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 11/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 11/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 11/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 11/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 11/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 11/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 11/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 11/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 11/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 11/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 11/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 11/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 11/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 11/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 11/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 11/example/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; //import { AppComponent } from './app.component'; import { ProductComponent } from "./component"; @NgModule({ declarations: [ProductComponent], imports: [BrowserModule], providers: [], bootstrap: [ProductComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 11/example/src/app/component.ts ================================================ import { Component } from "@angular/core"; import { Model } from "./repository.model"; @Component({ selector: "app", templateUrl: "template.html" }) export class ProductComponent { model: Model = new Model(); } ================================================ FILE: Update for Angular 11/Chapter 11/example/src/app/datasource.model.ts ================================================ import { Product } from "./product.model"; export class SimpleDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 11/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 11/example/src/app/repository.model.ts ================================================ import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; export class Model { private dataSource: SimpleDataSource; private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor() { this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } } ================================================ FILE: Update for Angular 11/Chapter 11/example/src/app/template.html ================================================
There are {{model.getProducts().length}} products in the model
================================================ FILE: Update for Angular 11/Chapter 11/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 11/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 11/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 11/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 11/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 11/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 11/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 11/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 11/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 11/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 11/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 12/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 12/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 12/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 12/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 12/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 12/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 12/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 12/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 12/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 12/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 12/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 12/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 12/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 12/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 12/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 12/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 12/example/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; //import { AppComponent } from './app.component'; import { ProductComponent } from "./component"; @NgModule({ declarations: [ProductComponent], imports: [BrowserModule], providers: [], bootstrap: [ProductComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 12/example/src/app/component.ts ================================================ import { ApplicationRef, Component } from "@angular/core"; import { Model } from "./repository.model"; import { Product } from "./product.model"; @Component({ selector: "app", templateUrl: "template.html" }) export class ProductComponent { model: Model = new Model(); constructor(ref: ApplicationRef) { (window).appRef = ref; (window).model = this.model; } getProductByPosition(position: number): Product { return this.model.getProducts()[position]; } getClassesByPosition(position: number): string { let product = this.getProductByPosition(position); return "p-2 " + (product.price < 50 ? "bg-info" : "bg-warning"); } } ================================================ FILE: Update for Angular 11/Chapter 12/example/src/app/datasource.model.ts ================================================ import { Product } from "./product.model"; export class SimpleDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 12/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 12/example/src/app/repository.model.ts ================================================ import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; export class Model { private dataSource: SimpleDataSource; private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor() { this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } } ================================================ FILE: Update for Angular 11/Chapter 12/example/src/app/template.html ================================================
The first product is {{getProductByPosition(0).name}}.
The second product is {{getProductByPosition(1).name}}
================================================ FILE: Update for Angular 11/Chapter 12/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 12/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 12/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 12/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 12/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 12/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 12/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 12/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 12/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 12/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 12/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 13/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 13/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 13/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 13/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 13/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 13/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 13/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 13/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 13/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 13/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 13/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 13/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 13/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 13/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 13/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 13/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 13/example/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; //import { AppComponent } from './app.component'; import { ProductComponent } from "./component"; @NgModule({ declarations: [ProductComponent], imports: [BrowserModule], providers: [], bootstrap: [ProductComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 13/example/src/app/component.ts ================================================ import { ApplicationRef, Component } from "@angular/core"; import { Model } from "./repository.model"; import { Product } from "./product.model"; @Component({ selector: "app", templateUrl: "template.html" }) export class ProductComponent { model: Model = new Model(); constructor(ref: ApplicationRef) { (window).appRef = ref; (window).model = this.model; } getProductByPosition(position: number): Product { return this.model.getProducts()[position]; } getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts(); } getProductCount(): number { console.log("getProductCount invoked"); return this.getProducts().length; } getKey(index: number, product: Product) { return product.id; } targetName: string = "Kayak"; counter: number = 1; get nextProduct(): Product { return this.model.getProducts().shift(); } getProductPrice(index: number): number { return Math.floor(this.getProduct(index).price); } } ================================================ FILE: Update for Angular 11/Chapter 13/example/src/app/datasource.model.ts ================================================ import { Product } from "./product.model"; export class SimpleDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 13/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 13/example/src/app/repository.model.ts ================================================ import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; export class Model { private dataSource: SimpleDataSource; private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor() { this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } swapProduct() { let p = this.products.shift(); this.products.push(new Product(p.id, p.name, p.category, p.price)); } } ================================================ FILE: Update for Angular 11/Chapter 13/example/src/app/template.html ================================================

{{text}}

There are {{getProductCount()}} products.
The rounded price is {{getProductPrice(1)}}
================================================ FILE: Update for Angular 11/Chapter 13/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 13/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 13/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 13/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 13/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 13/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 13/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 13/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 13/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 13/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 13/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 14/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 14/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 14/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 14/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 14/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 14/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 14/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 14/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 14/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 14/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 14/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 14/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 14/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ProductComponent } from "./component"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; @NgModule({ imports: [BrowserModule, FormsModule, ReactiveFormsModule], declarations: [ProductComponent], bootstrap: [ProductComponent] }) export class AppModule {} ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/component.ts ================================================ import { ApplicationRef, Component } from "@angular/core"; import { NgForm, FormGroup } from "@angular/forms"; import { Model } from "./repository.model"; import { Product } from "./product.model"; import { ProductFormGroup, ProductFormControl } from "./form.model"; @Component({ selector: "app", templateUrl: "template.html" }) export class ProductComponent { model: Model = new Model(); formGroup: ProductFormGroup = new ProductFormGroup(); getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts(); } newProduct: Product = new Product(); get jsonProduct() { return JSON.stringify(this.newProduct); } addProduct(p: Product) { console.log("New Product: " + this.jsonProduct); } formSubmitted: boolean = false; submitForm() { Object.keys(this.formGroup.controls) .forEach(c => this.newProduct[c] = this.formGroup.controls[c].value); this.formSubmitted = true; if (this.formGroup.valid) { this.addProduct(this.newProduct); this.newProduct = new Product(); this.formGroup.reset(); this.formSubmitted = false; } } } ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/datasource.model.ts ================================================ import { Product } from "./product.model"; export class SimpleDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/form.model.ts ================================================ import { FormControl, FormGroup, Validators } from "@angular/forms"; import { LimitValidator } from "./limit.formvalidator"; export class ProductFormControl extends FormControl { label: string; modelProperty: string; constructor(label:string, property:string, value: any, validator: any) { super(value, validator); this.label = label; this.modelProperty = property; } getValidationMessages() { let messages: string[] = []; if (this.errors) { for (let errorName in this.errors) { switch (errorName) { case "required": messages.push(`You must enter a ${this.label}`); break; case "minlength": messages.push(`A ${this.label} must be at least ${this.errors['minlength'].requiredLength} characters`); break; case "maxlength": messages.push(`A ${this.label} must be no more than ${this.errors['maxlength'].requiredLength} characters`); break; case "pattern": messages.push(`The ${this.label} contains illegal characters`); break; case "limit": messages.push(`A ${this.label} cannot be more than ${this.errors['limit'].limit}`); break; } } } return messages; } } export class ProductFormGroup extends FormGroup { constructor() { super({ name: new ProductFormControl("Name", "name", "", Validators.required), category: new ProductFormControl("Category", "category", "", Validators.compose([Validators.required, Validators.pattern("^[A-Za-z ]+$"), Validators.minLength(3), Validators.maxLength(10)])), price: new ProductFormControl("Price", "price", "", Validators.compose([Validators.required, LimitValidator.Limit(100), Validators.pattern("^[0-9\.]+$")])) }); } get productControls(): ProductFormControl[] { return Object.keys(this.controls) .map(k => this.controls[k] as ProductFormControl); } getValidationMessages(name: string): string[] { return (this.controls['name'] as ProductFormControl).getValidationMessages(); } getFormValidationMessages() : string[] { let messages: string[] = []; Object.values(this.controls).forEach(c => messages.push(...(c as ProductFormControl).getValidationMessages())); return messages; } } ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/limit.formvalidator.ts ================================================ import { FormControl } from "@angular/forms"; export class LimitValidator { static Limit(limit:number) { return (control:FormControl) : {[key: string]: any} => { let val = Number(control.value); if (val != NaN && val > limit) { return {"limit": {"limit": limit, "actualValue": val}}; } else { return null; } } } } ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/repository.model.ts ================================================ import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; export class Model { private dataSource: SimpleDataSource; private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor() { this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } swapProduct() { let p = this.products.shift(); this.products.push(new Product(p.id, p.name, p.category, p.price)); } } ================================================ FILE: Update for Angular 11/Chapter 14/example/src/app/template.html ================================================
There are problems with the form
  • {{error}}
  • {{error}}
================================================ FILE: Update for Angular 11/Chapter 14/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 14/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 14/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 14/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 14/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 14/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 14/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 14/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 14/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 14/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 14/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 15/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 15/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 15/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 15/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 15/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 15/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 15/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 15/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 15/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 15/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 15/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 15/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 15/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ProductComponent } from "./component"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { PaAttrDirective } from "./attr.directive"; import { PaModel } from "./twoway.directive"; @NgModule({ imports: [BrowserModule, FormsModule, ReactiveFormsModule], declarations: [ProductComponent, PaAttrDirective, PaModel], bootstrap: [ProductComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/attr.directive.ts ================================================ import { Directive, ElementRef, Attribute, Input, SimpleChange, Output, EventEmitter, HostListener, HostBinding } from "@angular/core"; import { Product } from "./product.model"; @Directive({ selector: "[pa-attr]" }) export class PaAttrDirective { @Input("pa-attr") @HostBinding("class") bgClass: string; @Input("pa-product") product: Product; @Output("pa-category") click = new EventEmitter(); @HostListener("click") triggerCustomEvent() { if (this.product != null) { this.click.emit(this.product.category); } } } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/component.ts ================================================ import { ApplicationRef, Component } from "@angular/core"; import { NgForm, FormGroup } from "@angular/forms"; import { Model } from "./repository.model"; import { Product } from "./product.model"; import { ProductFormGroup, ProductFormControl } from "./form.model"; @Component({ selector: "app", templateUrl: "template.html" }) export class ProductComponent { model: Model = new Model(); formGroup: ProductFormGroup = new ProductFormGroup(); getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts(); } newProduct: Product = new Product(); addProduct(p: Product) { this.model.saveProduct(p); } formSubmitted: boolean = false; submitForm() { this.addProduct(this.newProduct); } } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/datasource.model.ts ================================================ import { Product } from "./product.model"; export class SimpleDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/form.model.ts ================================================ import { FormControl, FormGroup, Validators } from "@angular/forms"; import { LimitValidator } from "./limit.formvalidator"; export class ProductFormControl extends FormControl { label: string; modelProperty: string; constructor(label:string, property:string, value: any, validator: any) { super(value, validator); this.label = label; this.modelProperty = property; } getValidationMessages() { let messages: string[] = []; if (this.errors) { for (let errorName in this.errors) { switch (errorName) { case "required": messages.push(`You must enter a ${this.label}`); break; case "minlength": messages.push(`A ${this.label} must be at least ${this.errors['minlength'].requiredLength} characters`); break; case "maxlength": messages.push(`A ${this.label} must be no more than ${this.errors['maxlength'].requiredLength} characters`); break; case "pattern": messages.push(`The ${this.label} contains illegal characters`); break; case "limit": messages.push(`A ${this.label} cannot be more than ${this.errors['limit'].limit}`); break; } } } return messages; } } export class ProductFormGroup extends FormGroup { constructor() { super({ name: new ProductFormControl("Name", "name", "", Validators.required), category: new ProductFormControl("Category", "category", "", Validators.compose([Validators.required, Validators.pattern("^[A-Za-z ]+$"), Validators.minLength(3), Validators.maxLength(10)])), price: new ProductFormControl("Price", "price", "", Validators.compose([Validators.required, LimitValidator.Limit(100), Validators.pattern("^[0-9\.]+$")])) }); } get productControls(): ProductFormControl[] { return Object.keys(this.controls) .map(k => this.controls[k] as ProductFormControl); } getValidationMessages(name: string): string[] { return (this.controls['name'] as ProductFormControl).getValidationMessages(); } getFormValidationMessages() : string[] { let messages: string[] = []; Object.values(this.controls).forEach(c => messages.push(...(c as ProductFormControl).getValidationMessages())); return messages; } } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/limit.formvalidator.ts ================================================ import { FormControl } from "@angular/forms"; export class LimitValidator { static Limit(limit:number) { return (control:FormControl) : {[key: string]: any} => { let val = Number(control.value); if (val != NaN && val > limit) { return {"limit": {"limit": limit, "actualValue": val}}; } else { return null; } } } } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/repository.model.ts ================================================ import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; export class Model { private dataSource: SimpleDataSource; private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor() { this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } swapProduct() { let p = this.products.shift(); this.products.push(new Product(p.id, p.name, p.category, p.price)); } } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/template.html ================================================
Direction: {{paModel.direction}}
NameCategoryPrice
{{i + 1}} {{item.name}} {{item.category}} {{item.price}}
================================================ FILE: Update for Angular 11/Chapter 15/example/src/app/twoway.directive.ts ================================================ import { Input, Output, EventEmitter, Directive, HostBinding, HostListener, SimpleChange } from "@angular/core"; @Directive({ selector: "input[paModel]", exportAs: "paModel" }) export class PaModel { direction: string = "None"; @Input("paModel") modelProperty: string; @HostBinding("value") fieldValue: string = ""; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["modelProperty"]; if (change.currentValue != this.fieldValue) { this.fieldValue = changes["modelProperty"].currentValue || ""; this.direction = "Model"; } } @Output("paModelChange") update = new EventEmitter(); @HostListener("input", ["$event.target.value"]) updateValue(newValue: string) { this.fieldValue = newValue; this.update.emit(newValue); this.direction = "Element"; } } ================================================ FILE: Update for Angular 11/Chapter 15/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 15/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 15/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 15/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 15/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 15/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 15/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 15/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 15/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 15/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 15/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 16/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 16/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 16/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 16/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 16/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 16/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 16/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 16/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 16/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 16/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 16/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 16/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 16/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ProductComponent } from "./component"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { PaAttrDirective } from "./attr.directive"; import { PaModel } from "./twoway.directive"; import { PaStructureDirective } from "./structure.directive"; import { PaIteratorDirective } from "./iterator.directive"; import { PaCellColor } from "./cellColor.directive"; import { PaCellColorSwitcher } from "./cellColorSwitcher.directive"; @NgModule({ imports: [BrowserModule, FormsModule, ReactiveFormsModule], declarations: [ProductComponent, PaAttrDirective, PaModel, PaStructureDirective, PaIteratorDirective, PaCellColor, PaCellColorSwitcher], bootstrap: [ProductComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/attr.directive.ts ================================================ import { Directive, ElementRef, Attribute, Input, SimpleChange, Output, EventEmitter, HostListener, HostBinding } from "@angular/core"; import { Product } from "./product.model"; @Directive({ selector: "[pa-attr]" }) export class PaAttrDirective { @Input("pa-attr") @HostBinding("class") bgClass: string; @Input("pa-product") product: Product; @Output("pa-category") click = new EventEmitter(); @HostListener("click") triggerCustomEvent() { if (this.product != null) { this.click.emit(this.product.category); } } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/cellColor.directive.ts ================================================ import { Directive, HostBinding } from "@angular/core"; @Directive({ selector: "td" }) export class PaCellColor { @HostBinding("class") bgClass: string = ""; setColor(dark: Boolean) { this.bgClass = dark ? "bg-dark" : ""; } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/cellColorSwitcher.directive.ts ================================================ import { Directive, Input, Output, EventEmitter, SimpleChange, ContentChildren, QueryList } from "@angular/core"; import { PaCellColor } from "./cellColor.directive"; @Directive({ selector: "table" }) export class PaCellColorSwitcher { @Input("paCellDarkColor") modelProperty: Boolean; @ContentChildren(PaCellColor, {descendants: true}) contentChildren: QueryList; ngOnChanges(changes: { [property: string]: SimpleChange }) { this.updateContentChildren(changes["modelProperty"].currentValue); } ngAfterContentInit() { this.contentChildren.changes.subscribe(() => { setTimeout(() => this.updateContentChildren(this.modelProperty), 0); }); } private updateContentChildren(dark: Boolean) { if (this.contentChildren != null && dark != undefined) { this.contentChildren.forEach((child, index) => { child.setColor(index % 2 ? dark : !dark); }); } } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/component.ts ================================================ import { ApplicationRef, Component } from "@angular/core"; import { NgForm, FormGroup } from "@angular/forms"; import { Model } from "./repository.model"; import { Product } from "./product.model"; import { ProductFormGroup, ProductFormControl } from "./form.model"; @Component({ selector: "app", templateUrl: "template.html" }) export class ProductComponent { model: Model = new Model(); formGroup: ProductFormGroup = new ProductFormGroup(); showTable: boolean = false; darkColor: boolean = false; getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts(); } newProduct: Product = new Product(); addProduct(p: Product) { this.model.saveProduct(p); } deleteProduct(key: number) { this.model.deleteProduct(key); } formSubmitted: boolean = false; submitForm() { this.addProduct(this.newProduct); } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/datasource.model.ts ================================================ import { Product } from "./product.model"; export class SimpleDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/form.model.ts ================================================ import { FormControl, FormGroup, Validators } from "@angular/forms"; import { LimitValidator } from "./limit.formvalidator"; export class ProductFormControl extends FormControl { label: string; modelProperty: string; constructor(label:string, property:string, value: any, validator: any) { super(value, validator); this.label = label; this.modelProperty = property; } getValidationMessages() { let messages: string[] = []; if (this.errors) { for (let errorName in this.errors) { switch (errorName) { case "required": messages.push(`You must enter a ${this.label}`); break; case "minlength": messages.push(`A ${this.label} must be at least ${this.errors['minlength'].requiredLength} characters`); break; case "maxlength": messages.push(`A ${this.label} must be no more than ${this.errors['maxlength'].requiredLength} characters`); break; case "pattern": messages.push(`The ${this.label} contains illegal characters`); break; case "limit": messages.push(`A ${this.label} cannot be more than ${this.errors['limit'].limit}`); break; } } } return messages; } } export class ProductFormGroup extends FormGroup { constructor() { super({ name: new ProductFormControl("Name", "name", "", Validators.required), category: new ProductFormControl("Category", "category", "", Validators.compose([Validators.required, Validators.pattern("^[A-Za-z ]+$"), Validators.minLength(3), Validators.maxLength(10)])), price: new ProductFormControl("Price", "price", "", Validators.compose([Validators.required, LimitValidator.Limit(100), Validators.pattern("^[0-9\.]+$")])) }); } get productControls(): ProductFormControl[] { return Object.keys(this.controls) .map(k => this.controls[k] as ProductFormControl); } getValidationMessages(name: string): string[] { return (this.controls['name'] as ProductFormControl).getValidationMessages(); } getFormValidationMessages() : string[] { let messages: string[] = []; Object.values(this.controls).forEach(c => messages.push(...(c as ProductFormControl).getValidationMessages())); return messages; } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/iterator.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, SimpleChange, IterableDiffer, IterableDiffers, ChangeDetectorRef, ViewRef, IterableChangeRecord } from "@angular/core"; @Directive({ selector: "[paForOf]" }) export class PaIteratorDirective { private differ: IterableDiffer; private views: Map = new Map(); constructor(private container: ViewContainerRef, private template: TemplateRef, private differs: IterableDiffers, private changeDetector: ChangeDetectorRef) { } @Input("paForOf") dataSource: any; ngOnInit() { this.differ = >this.differs.find(this.dataSource).create(); } ngDoCheck() { let changes = this.differ.diff(this.dataSource); if (changes != null) { let arr: IterableChangeRecord[] = []; changes.forEachAddedItem(addition => arr.push(addition)); arr.forEach(addition => { let context = new PaIteratorContext(addition.item, addition.currentIndex, arr.length); context.view = this.container.createEmbeddedView(this.template, context); this.views.set(addition.trackById, context); }); let removals = false; changes.forEachRemovedItem(removal => { removals = true; let context = this.views.get(removal.trackById); if (context != null) { this.container.remove(this.container.indexOf(context.view)); this.views.delete(removal.trackById); } }); if (removals) { let index = 0; this.views.forEach(context => context.setData(index++, this.views.size)); } } } } class PaIteratorContext { index: number; odd: boolean; even: boolean; first: boolean; last: boolean; view: ViewRef; constructor(public $implicit: any, public position: number, total: number ) { this.setData(position, total); } setData(index: number, total: number) { this.index = index; this.odd = index % 2 == 1; this.even = !this.odd; this.first = index == 0; this.last = index == total - 1; } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/limit.formvalidator.ts ================================================ import { FormControl } from "@angular/forms"; export class LimitValidator { static Limit(limit:number) { return (control:FormControl) : {[key: string]: any} => { let val = Number(control.value); if (val != NaN && val > limit) { return {"limit": {"limit": limit, "actualValue": val}}; } else { return null; } } } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/repository.model.ts ================================================ import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; export class Model { private dataSource: SimpleDataSource; private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor() { this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } swapProduct() { let p = this.products.shift(); this.products.push(new Product(p.id, p.name, p.category, p.price)); } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/structure.directive.ts ================================================ import { Directive, SimpleChange, ViewContainerRef, TemplateRef, Input } from "@angular/core"; @Directive({ selector: "[paIf]" }) export class PaStructureDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("paIf") expressionResult: boolean; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["expressionResult"]; if (!change.isFirstChange() && !change.currentValue) { this.container.clear(); } else if (change.currentValue) { this.container.createEmbeddedView(this.template); } } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/template.html ================================================
NameCategoryPrice
{{i + 1}} {{item.name}} {{item.category}} {{item.price}}
================================================ FILE: Update for Angular 11/Chapter 16/example/src/app/twoway.directive.ts ================================================ import { Input, Output, EventEmitter, Directive, HostBinding, HostListener, SimpleChange } from "@angular/core"; @Directive({ selector: "input[paModel]", exportAs: "paModel" }) export class PaModel { direction: string = "None"; @Input("paModel") modelProperty: string; @HostBinding("value") fieldValue: string = ""; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["modelProperty"]; if (change.currentValue != this.fieldValue) { this.fieldValue = changes["modelProperty"].currentValue || ""; this.direction = "Model"; } } @Output("paModelChange") update = new EventEmitter(); @HostListener("input", ["$event.target.value"]) updateValue(newValue: string) { this.fieldValue = newValue; this.update.emit(newValue); this.direction = "Element"; } } ================================================ FILE: Update for Angular 11/Chapter 16/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 16/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 16/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 16/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 16/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 16/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 16/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 16/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 16/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 16/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 16/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 17/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 17/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 17/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 17/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 17/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 17/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 17/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 17/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 17/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 17/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 17/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 17/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 17/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ProductComponent } from "./component"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { PaAttrDirective } from "./attr.directive"; import { PaModel } from "./twoway.directive"; import { PaStructureDirective } from "./structure.directive"; import { PaIteratorDirective } from "./iterator.directive"; import { PaCellColor } from "./cellColor.directive"; import { PaCellColorSwitcher } from "./cellColorSwitcher.directive"; import { ProductTableComponent } from "./productTable.component"; import { ProductFormComponent } from "./productForm.component"; import { PaToggleView } from "./toggleView.component"; @NgModule({ imports: [BrowserModule, FormsModule, ReactiveFormsModule], declarations: [ProductComponent, PaAttrDirective, PaModel, PaStructureDirective, PaIteratorDirective, PaCellColor, PaCellColorSwitcher, ProductTableComponent, ProductFormComponent, PaToggleView], bootstrap: [ProductComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/attr.directive.ts ================================================ import { Directive, ElementRef, Attribute, Input, SimpleChange, Output, EventEmitter, HostListener, HostBinding } from "@angular/core"; import { Product } from "./product.model"; @Directive({ selector: "[pa-attr]" }) export class PaAttrDirective { @Input("pa-attr") @HostBinding("class") bgClass: string; @Input("pa-product") product: Product; @Output("pa-category") click = new EventEmitter(); @HostListener("click") triggerCustomEvent() { if (this.product != null) { this.click.emit(this.product.category); } } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/cellColor.directive.ts ================================================ import { Directive, HostBinding } from "@angular/core"; @Directive({ selector: "td" }) export class PaCellColor { @HostBinding("class") bgClass: string = ""; setColor(dark: Boolean) { this.bgClass = dark ? "bg-dark" : ""; } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/cellColorSwitcher.directive.ts ================================================ import { Directive, Input, Output, EventEmitter, SimpleChange, ContentChildren, QueryList } from "@angular/core"; import { PaCellColor } from "./cellColor.directive"; @Directive({ selector: "table" }) export class PaCellColorSwitcher { @Input("paCellDarkColor") modelProperty: Boolean; @ContentChildren(PaCellColor, {descendants: true}) contentChildren: QueryList; ngOnChanges(changes: { [property: string]: SimpleChange }) { this.updateContentChildren(changes["modelProperty"].currentValue); } ngAfterContentInit() { this.contentChildren.changes.subscribe(() => { setTimeout(() => this.updateContentChildren(this.modelProperty), 0); }); } private updateContentChildren(dark: Boolean) { if (this.contentChildren != null && dark != undefined) { this.contentChildren.forEach((child, index) => { child.setColor(index % 2 ? dark : !dark); }); } } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/component.ts ================================================ import { ApplicationRef, Component } from "@angular/core"; import { Model } from "./repository.model"; import { Product } from "./product.model"; import { ProductFormGroup } from "./form.model"; @Component({ selector: "app", templateUrl: "template.html", styles: ["/deep/ div { border: 2px black solid; font-style:italic }"] }) export class ProductComponent { model: Model = new Model(); addProduct(p: Product) { this.model.saveProduct(p); } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/datasource.model.ts ================================================ import { Product } from "./product.model"; export class SimpleDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/form.model.ts ================================================ import { FormControl, FormGroup, Validators } from "@angular/forms"; import { LimitValidator } from "./limit.formvalidator"; export class ProductFormControl extends FormControl { label: string; modelProperty: string; constructor(label:string, property:string, value: any, validator: any) { super(value, validator); this.label = label; this.modelProperty = property; } getValidationMessages() { let messages: string[] = []; if (this.errors) { for (let errorName in this.errors) { switch (errorName) { case "required": messages.push(`You must enter a ${this.label}`); break; case "minlength": messages.push(`A ${this.label} must be at least ${this.errors['minlength'].requiredLength} characters`); break; case "maxlength": messages.push(`A ${this.label} must be no more than ${this.errors['maxlength'].requiredLength} characters`); break; case "pattern": messages.push(`The ${this.label} contains illegal characters`); break; case "limit": messages.push(`A ${this.label} cannot be more than ${this.errors['limit'].limit}`); break; } } } return messages; } } export class ProductFormGroup extends FormGroup { constructor() { super({ name: new ProductFormControl("Name", "name", "", Validators.required), category: new ProductFormControl("Category", "category", "", Validators.compose([Validators.required, Validators.pattern("^[A-Za-z ]+$"), Validators.minLength(3), Validators.maxLength(10)])), price: new ProductFormControl("Price", "price", "", Validators.compose([Validators.required, LimitValidator.Limit(100), Validators.pattern("^[0-9\.]+$")])) }); } get productControls(): ProductFormControl[] { return Object.keys(this.controls) .map(k => this.controls[k] as ProductFormControl); } getValidationMessages(name: string): string[] { return (this.controls['name'] as ProductFormControl).getValidationMessages(); } getFormValidationMessages() : string[] { let messages: string[] = []; Object.values(this.controls).forEach(c => messages.push(...(c as ProductFormControl).getValidationMessages())); return messages; } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/iterator.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, SimpleChange, IterableDiffer, IterableDiffers, ChangeDetectorRef, ViewRef, IterableChangeRecord } from "@angular/core"; @Directive({ selector: "[paForOf]" }) export class PaIteratorDirective { private differ: IterableDiffer; private views: Map = new Map(); constructor(private container: ViewContainerRef, private template: TemplateRef, private differs: IterableDiffers, private changeDetector: ChangeDetectorRef) { } @Input("paForOf") dataSource: any; ngOnInit() { this.differ = >this.differs.find(this.dataSource).create(); } ngDoCheck() { let changes = this.differ.diff(this.dataSource); if (changes != null) { let arr: IterableChangeRecord[] = []; changes.forEachAddedItem(addition => arr.push(addition)); arr.forEach(addition => { let context = new PaIteratorContext(addition.item, addition.currentIndex, arr.length); context.view = this.container.createEmbeddedView(this.template, context); this.views.set(addition.trackById, context); }); let removals = false; changes.forEachRemovedItem(removal => { removals = true; let context = this.views.get(removal.trackById); if (context != null) { this.container.remove(this.container.indexOf(context.view)); this.views.delete(removal.trackById); } }); if (removals) { let index = 0; this.views.forEach(context => context.setData(index++, this.views.size)); } } } } class PaIteratorContext { index: number; odd: boolean; even: boolean; first: boolean; last: boolean; view: ViewRef; constructor(public $implicit: any, public position: number, total: number ) { this.setData(position, total); } setData(index: number, total: number) { this.index = index; this.odd = index % 2 == 1; this.even = !this.odd; this.first = index == 0; this.last = index == total - 1; } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/limit.formvalidator.ts ================================================ import { FormControl } from "@angular/forms"; export class LimitValidator { static Limit(limit:number) { return (control:FormControl) : {[key: string]: any} => { let val = Number(control.value); if (val != NaN && val > limit) { return {"limit": {"limit": limit, "actualValue": val}}; } else { return null; } } } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/productForm.component.css ================================================ div { background-color: lightcoral; } :host:hover { font-size: 25px; } :host-context(.angularApp) input { background-color: lightgray; } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/productForm.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/productForm.component.ts ================================================ import { Component, Output, EventEmitter, ViewEncapsulation } from "@angular/core"; import { Product } from "./product.model"; @Component({ selector: "paProductForm", templateUrl: "productForm.component.html", styleUrls: ["productForm.component.css"], encapsulation: ViewEncapsulation.Emulated }) export class ProductFormComponent { newProduct: Product = new Product(); @Output("paNewProduct") newProductEvent = new EventEmitter(); submitForm(form: any) { this.newProductEvent.emit(this.newProduct); this.newProduct = new Product(); form.reset(); } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/productTable.component.html ================================================
NameCategoryPrice
{{i + 1}} {{item.name}} {{item.category}} {{item.price}}
================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/productTable.component.ts ================================================ import { Component, Input, ViewChildren, QueryList } from "@angular/core"; import { Model } from "./repository.model"; import { Product } from "./product.model"; import { PaCellColor } from "./cellColor.directive"; @Component({ selector: "paProductTable", templateUrl: "productTable.component.html" }) export class ProductTableComponent { @Input("model") dataModel: Model; getProduct(key: number): Product { return this.dataModel.getProduct(key); } getProducts(): Product[] { return this.dataModel.getProducts(); } deleteProduct(key: number) { this.dataModel.deleteProduct(key); } showTable: boolean = true; @ViewChildren(PaCellColor) viewChildren: QueryList; ngAfterViewInit() { this.viewChildren.changes.subscribe(() => { this.updateViewChildren(); }); this.updateViewChildren(); } private updateViewChildren() { setTimeout(() => { this.viewChildren.forEach((child, index) => { child.setColor(index % 2 ? true : false); }) }, 0); } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/repository.model.ts ================================================ import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; export class Model { private dataSource: SimpleDataSource; private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor() { this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } swapProduct() { let p = this.products.shift(); this.products.push(new Product(p.id, p.name, p.category, p.price)); } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/structure.directive.ts ================================================ import { Directive, SimpleChange, ViewContainerRef, TemplateRef, Input } from "@angular/core"; @Directive({ selector: "[paIf]" }) export class PaStructureDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("paIf") expressionResult: boolean; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["expressionResult"]; if (!change.isFirstChange() && !change.currentValue) { this.container.clear(); } else if (change.currentValue) { this.container.createEmbeddedView(this.template); } } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/template.html ================================================
================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/toggleView.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/toggleView.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "paToggleView", templateUrl: "toggleView.component.html" }) export class PaToggleView { showContent: boolean = true; } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/app/twoway.directive.ts ================================================ import { Input, Output, EventEmitter, Directive, HostBinding, HostListener, SimpleChange } from "@angular/core"; @Directive({ selector: "input[paModel]", exportAs: "paModel" }) export class PaModel { direction: string = "None"; @Input("paModel") modelProperty: string; @HostBinding("value") fieldValue: string = ""; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["modelProperty"]; if (change.currentValue != this.fieldValue) { this.fieldValue = changes["modelProperty"].currentValue || ""; this.direction = "Model"; } } @Output("paModelChange") update = new EventEmitter(); @HostListener("input", ["$event.target.value"]) updateValue(newValue: string) { this.fieldValue = newValue; this.update.emit(newValue); this.direction = "Element"; } } ================================================ FILE: Update for Angular 11/Chapter 17/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 17/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 17/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 17/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 17/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 17/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 17/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 17/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 17/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 17/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 17/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 18/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 18/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 18/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 18/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 18/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 18/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 18/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 18/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 18/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 18/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 18/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 18/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 18/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/addTax.pipe.ts ================================================ import { Pipe } from "@angular/core"; @Pipe({ name: "addTax" }) export class PaAddTaxPipe { defaultRate: number = 10; transform(value: any, rate?: any): number { let valueNumber = Number.parseFloat(value); let rateNumber = rate == undefined ? this.defaultRate : Number.parseInt(rate); return valueNumber + (valueNumber * (rateNumber / 100)); } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ProductComponent } from "./component"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { PaAttrDirective } from "./attr.directive"; import { PaModel } from "./twoway.directive"; import { PaStructureDirective } from "./structure.directive"; import { PaIteratorDirective } from "./iterator.directive"; import { PaCellColor } from "./cellColor.directive"; import { PaCellColorSwitcher } from "./cellColorSwitcher.directive"; import { ProductTableComponent } from "./productTable.component"; import { ProductFormComponent } from "./productForm.component"; import { PaToggleView } from "./toggleView.component"; import { PaAddTaxPipe } from "./addTax.pipe"; import { PaCategoryFilterPipe } from "./categoryFilter.pipe"; import { LOCALE_ID } from "@angular/core"; import localeFr from '@angular/common/locales/fr'; import { registerLocaleData } from '@angular/common'; registerLocaleData(localeFr); @NgModule({ imports: [BrowserModule, FormsModule, ReactiveFormsModule], declarations: [ProductComponent, PaAttrDirective, PaModel, PaStructureDirective, PaIteratorDirective, PaCellColor, PaCellColorSwitcher, ProductTableComponent, ProductFormComponent, PaToggleView, PaAddTaxPipe, PaCategoryFilterPipe], //providers: [{ provide: LOCALE_ID, useValue: "fr-FR" }], bootstrap: [ProductComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/attr.directive.ts ================================================ import { Directive, ElementRef, Attribute, Input, SimpleChange, Output, EventEmitter, HostListener, HostBinding } from "@angular/core"; import { Product } from "./product.model"; @Directive({ selector: "[pa-attr]" }) export class PaAttrDirective { @Input("pa-attr") @HostBinding("class") bgClass: string; @Input("pa-product") product: Product; @Output("pa-category") click = new EventEmitter(); @HostListener("click") triggerCustomEvent() { if (this.product != null) { this.click.emit(this.product.category); } } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/categoryFilter.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { Product } from "./product.model"; @Pipe({ name: "filter", pure: false }) export class PaCategoryFilterPipe { transform(products: Product[], category: string): Product[] { return category == undefined ? products : products.filter(p => p.category == category); } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/cellColor.directive.ts ================================================ import { Directive, HostBinding } from "@angular/core"; @Directive({ selector: "td[paApplyColor]" }) export class PaCellColor { @HostBinding("class") bgClass: string = ""; setColor(dark: Boolean) { this.bgClass = dark ? "bg-dark" : ""; } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/cellColorSwitcher.directive.ts ================================================ import { Directive, Input, Output, EventEmitter, SimpleChange, ContentChildren, QueryList } from "@angular/core"; import { PaCellColor } from "./cellColor.directive"; @Directive({ selector: "table" }) export class PaCellColorSwitcher { @Input("paCellDarkColor") modelProperty: Boolean; @ContentChildren(PaCellColor, {descendants: true}) contentChildren: QueryList; ngOnChanges(changes: { [property: string]: SimpleChange }) { this.updateContentChildren(changes["modelProperty"].currentValue); } ngAfterContentInit() { this.contentChildren.changes.subscribe(() => { setTimeout(() => this.updateContentChildren(this.modelProperty), 0); }); } private updateContentChildren(dark: Boolean) { if (this.contentChildren != null && dark != undefined) { this.contentChildren.forEach((child, index) => { child.setColor(index % 2 ? dark : !dark); }); } } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/component.ts ================================================ import { ApplicationRef, Component } from "@angular/core"; import { Model } from "./repository.model"; import { Product } from "./product.model"; import { ProductFormGroup } from "./form.model"; @Component({ selector: "app", templateUrl: "template.html", //styles: ["/deep/ div { border: 2px black solid; font-style:italic }"] }) export class ProductComponent { model: Model = new Model(); addProduct(p: Product) { this.model.saveProduct(p); } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/datasource.model.ts ================================================ import { Product } from "./product.model"; export class SimpleDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/form.model.ts ================================================ import { FormControl, FormGroup, Validators } from "@angular/forms"; import { LimitValidator } from "./limit.formvalidator"; export class ProductFormControl extends FormControl { label: string; modelProperty: string; constructor(label:string, property:string, value: any, validator: any) { super(value, validator); this.label = label; this.modelProperty = property; } getValidationMessages() { let messages: string[] = []; if (this.errors) { for (let errorName in this.errors) { switch (errorName) { case "required": messages.push(`You must enter a ${this.label}`); break; case "minlength": messages.push(`A ${this.label} must be at least ${this.errors['minlength'].requiredLength} characters`); break; case "maxlength": messages.push(`A ${this.label} must be no more than ${this.errors['maxlength'].requiredLength} characters`); break; case "pattern": messages.push(`The ${this.label} contains illegal characters`); break; case "limit": messages.push(`A ${this.label} cannot be more than ${this.errors['limit'].limit}`); break; } } } return messages; } } export class ProductFormGroup extends FormGroup { constructor() { super({ name: new ProductFormControl("Name", "name", "", Validators.required), category: new ProductFormControl("Category", "category", "", Validators.compose([Validators.required, Validators.pattern("^[A-Za-z ]+$"), Validators.minLength(3), Validators.maxLength(10)])), price: new ProductFormControl("Price", "price", "", Validators.compose([Validators.required, LimitValidator.Limit(100), Validators.pattern("^[0-9\.]+$")])) }); } get productControls(): ProductFormControl[] { return Object.keys(this.controls) .map(k => this.controls[k] as ProductFormControl); } getValidationMessages(name: string): string[] { return (this.controls['name'] as ProductFormControl).getValidationMessages(); } getFormValidationMessages() : string[] { let messages: string[] = []; Object.values(this.controls).forEach(c => messages.push(...(c as ProductFormControl).getValidationMessages())); return messages; } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/iterator.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, SimpleChange, IterableDiffer, IterableDiffers, ChangeDetectorRef, ViewRef, IterableChangeRecord } from "@angular/core"; @Directive({ selector: "[paForOf]" }) export class PaIteratorDirective { private differ: IterableDiffer; private views: Map = new Map(); constructor(private container: ViewContainerRef, private template: TemplateRef, private differs: IterableDiffers, private changeDetector: ChangeDetectorRef) { } @Input("paForOf") dataSource: any; ngOnInit() { this.differ = >this.differs.find(this.dataSource).create(); } ngDoCheck() { let changes = this.differ.diff(this.dataSource); if (changes != null) { let arr: IterableChangeRecord[] = []; changes.forEachAddedItem(addition => arr.push(addition)); arr.forEach(addition => { let context = new PaIteratorContext(addition.item, addition.currentIndex, arr.length); context.view = this.container.createEmbeddedView(this.template, context); this.views.set(addition.trackById, context); }); let removals = false; changes.forEachRemovedItem(removal => { removals = true; let context = this.views.get(removal.trackById); if (context != null) { this.container.remove(this.container.indexOf(context.view)); this.views.delete(removal.trackById); } }); if (removals) { let index = 0; this.views.forEach(context => context.setData(index++, this.views.size)); } } } } class PaIteratorContext { index: number; odd: boolean; even: boolean; first: boolean; last: boolean; view: ViewRef; constructor(public $implicit: any, public position: number, total: number ) { this.setData(position, total); } setData(index: number, total: number) { this.index = index; this.odd = index % 2 == 1; this.even = !this.odd; this.first = index == 0; this.last = index == total - 1; } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/limit.formvalidator.ts ================================================ import { FormControl } from "@angular/forms"; export class LimitValidator { static Limit(limit:number) { return (control:FormControl) : {[key: string]: any} => { let val = Number(control.value); if (val != NaN && val > limit) { return {"limit": {"limit": limit, "actualValue": val}}; } else { return null; } } } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/productForm.component.css ================================================ div { background-color: lightcoral; } :host:hover { font-size: 25px; } :host-context(.angularApp) input { background-color: lightgray; } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/productForm.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/productForm.component.ts ================================================ import { Component, Output, EventEmitter, ViewEncapsulation } from "@angular/core"; import { Product } from "./product.model"; @Component({ selector: "paProductForm", templateUrl: "productForm.component.html", // styleUrls: ["productForm.component.css"], // encapsulation: ViewEncapsulation.Emulated }) export class ProductFormComponent { newProduct: Product = new Product(); @Output("paNewProduct") newProductEvent = new EventEmitter(); submitForm(form: any) { this.newProductEvent.emit(this.newProduct); this.newProduct = new Product(); form.reset(); } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/productTable.component.html ================================================
NameCategoryMessage
{{ item.name }} {{ item.category }} Helps you {{ item.category | i18nSelect:selectMap }}
There are {{ 1 | i18nPlural:numberMap }}
There are {{ 2 | i18nPlural:numberMap }}
There are {{ 100 | i18nPlural:numberMap }}
================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/productTable.component.ts ================================================ import { Component, Input, ViewChildren, QueryList } from "@angular/core"; import { Model } from "./repository.model"; import { Product } from "./product.model"; @Component({ selector: "paProductTable", templateUrl: "productTable.component.html" }) export class ProductTableComponent { @Input("model") dataModel: Model; getProduct(key: number): Product { return this.dataModel.getProduct(key); } getProducts(): Product[] { return this.dataModel.getProducts(); } deleteProduct(key: number) { this.dataModel.deleteProduct(key); } taxRate: number = 0; categoryFilter: string; itemCount: number = 3; dateObject: Date = new Date(2020, 1, 20); dateString: string = "2020-02-20T00:00:00.000Z"; dateNumber: number = 1582156800000; selectMap = { "Watersports": "stay dry", "Soccer": "score goals", "other": "have fun" } numberMap = { "=1": "one product", "=2": "two products", "other": "# products" } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/repository.model.ts ================================================ import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; export class Model { private dataSource: SimpleDataSource; private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor() { this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } swapProduct() { let p = this.products.shift(); this.products.push(new Product(p.id, p.name, p.category, p.price)); } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/structure.directive.ts ================================================ import { Directive, SimpleChange, ViewContainerRef, TemplateRef, Input } from "@angular/core"; @Directive({ selector: "[paIf]" }) export class PaStructureDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("paIf") expressionResult: boolean; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["expressionResult"]; if (!change.isFirstChange() && !change.currentValue) { this.container.clear(); } else if (change.currentValue) { this.container.createEmbeddedView(this.template); } } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/template.html ================================================
================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/toggleView.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/toggleView.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "paToggleView", templateUrl: "toggleView.component.html" }) export class PaToggleView { showContent: boolean = true; } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/app/twoway.directive.ts ================================================ import { Input, Output, EventEmitter, Directive, HostBinding, HostListener, SimpleChange } from "@angular/core"; @Directive({ selector: "input[paModel]", exportAs: "paModel" }) export class PaModel { direction: string = "None"; @Input("paModel") modelProperty: string; @HostBinding("value") fieldValue: string = ""; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["modelProperty"]; if (change.currentValue != this.fieldValue) { this.fieldValue = changes["modelProperty"].currentValue || ""; this.direction = "Model"; } } @Output("paModelChange") update = new EventEmitter(); @HostListener("input", ["$event.target.value"]) updateValue(newValue: string) { this.fieldValue = newValue; this.update.emit(newValue); this.direction = "Element"; } } ================================================ FILE: Update for Angular 11/Chapter 18/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 18/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 18/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 18/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 18/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 18/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 18/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 18/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 18/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 18/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 18/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 19/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 19/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 19/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 19/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 19/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 19/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 19/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 19/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 19/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 19/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 19/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 19/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 19/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/addTax.pipe.ts ================================================ import { Pipe } from "@angular/core"; @Pipe({ name: "addTax" }) export class PaAddTaxPipe { defaultRate: number = 10; transform(value: any, rate?: any): number { let valueNumber = Number.parseFloat(value); let rateNumber = rate == undefined ? this.defaultRate : Number.parseInt(rate); return valueNumber + (valueNumber * (rateNumber / 100)); } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ProductComponent } from "./component"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { PaAttrDirective } from "./attr.directive"; import { PaModel } from "./twoway.directive"; import { PaStructureDirective } from "./structure.directive"; import { PaIteratorDirective } from "./iterator.directive"; import { PaCellColor } from "./cellColor.directive"; import { PaCellColorSwitcher } from "./cellColorSwitcher.directive"; import { ProductTableComponent } from "./productTable.component"; import { ProductFormComponent } from "./productForm.component"; import { PaToggleView } from "./toggleView.component"; import { PaAddTaxPipe } from "./addTax.pipe"; import { PaCategoryFilterPipe } from "./categoryFilter.pipe"; import { LOCALE_ID } from "@angular/core"; import localeFr from '@angular/common/locales/fr'; import { registerLocaleData } from '@angular/common'; import { PaDiscountDisplayComponent } from "./discountDisplay.component"; import { PaDiscountEditorComponent } from "./discountEditor.component"; import { DiscountService } from "./discount.service"; import { PaDiscountPipe } from "./discount.pipe"; import { PaDiscountAmountDirective } from "./discountAmount.directive"; import { SimpleDataSource } from "./datasource.model"; import { Model } from "./repository.model"; registerLocaleData(localeFr); @NgModule({ imports: [BrowserModule, FormsModule, ReactiveFormsModule], declarations: [ProductComponent, PaAttrDirective, PaModel, PaStructureDirective, PaIteratorDirective, PaCellColor, PaCellColorSwitcher, ProductTableComponent, ProductFormComponent, PaToggleView, PaAddTaxPipe, PaCategoryFilterPipe, PaDiscountDisplayComponent, PaDiscountEditorComponent, PaDiscountPipe, PaDiscountAmountDirective], providers: [DiscountService, SimpleDataSource, Model], bootstrap: [ProductComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/attr.directive.ts ================================================ import { Directive, ElementRef, Attribute, Input, SimpleChange, Output, EventEmitter, HostListener, HostBinding } from "@angular/core"; import { Product } from "./product.model"; @Directive({ selector: "[pa-attr]" }) export class PaAttrDirective { @Input("pa-attr") @HostBinding("class") bgClass: string; @Input("pa-product") product: Product; @Output("pa-category") click = new EventEmitter(); @HostListener("click") triggerCustomEvent() { if (this.product != null) { this.click.emit(this.product.category); } } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/categoryFilter.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { Product } from "./product.model"; @Pipe({ name: "filter", pure: false }) export class PaCategoryFilterPipe { transform(products: Product[], category: string): Product[] { return category == undefined ? products : products.filter(p => p.category == category); } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/cellColor.directive.ts ================================================ import { Directive, HostBinding } from "@angular/core"; @Directive({ selector: "td[paApplyColor]" }) export class PaCellColor { @HostBinding("class") bgClass: string = ""; setColor(dark: Boolean) { this.bgClass = dark ? "bg-dark" : ""; } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/cellColorSwitcher.directive.ts ================================================ import { Directive, Input, Output, EventEmitter, SimpleChange, ContentChildren, QueryList } from "@angular/core"; import { PaCellColor } from "./cellColor.directive"; @Directive({ selector: "table" }) export class PaCellColorSwitcher { @Input("paCellDarkColor") modelProperty: Boolean; @ContentChildren(PaCellColor, {descendants: true}) contentChildren: QueryList; ngOnChanges(changes: { [property: string]: SimpleChange }) { this.updateContentChildren(changes["modelProperty"].currentValue); } ngAfterContentInit() { this.contentChildren.changes.subscribe(() => { setTimeout(() => this.updateContentChildren(this.modelProperty), 0); }); } private updateContentChildren(dark: Boolean) { if (this.contentChildren != null && dark != undefined) { this.contentChildren.forEach((child, index) => { child.setColor(index % 2 ? dark : !dark); }); } } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/component.ts ================================================ import { Component } from "@angular/core"; //import { Model } from "./repository.model"; //import { Product } from "./product.model"; //import { ProductFormGroup } from "./form.model"; @Component({ selector: "app", templateUrl: "template.html" }) export class ProductComponent { //model: Model = new Model(); //constructor(public model: Model) { } //addProduct(p: Product) { // this.model.saveProduct(p); //} } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/datasource.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class SimpleDataSource { private data:Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/discount.pipe.ts ================================================ import { Pipe, Injectable } from "@angular/core"; import { DiscountService } from "./discount.service"; @Pipe({ name: "discount", pure: false }) export class PaDiscountPipe { constructor(private discount: DiscountService) { } transform(price: number): number { return this.discount.applyDiscount(price); } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/discount.service.ts ================================================ import { Injectable } from "@angular/core"; @Injectable() export class DiscountService { private discountValue: number = 10; public get discount(): number { return this.discountValue; } public set discount(newValue: number) { this.discountValue = newValue || 0; } public applyDiscount(price: number) { return Math.max(price - this.discountValue, 5); } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/discountAmount.directive.ts ================================================ import { Directive, HostBinding, Input, SimpleChange, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { DiscountService } from "./discount.service"; @Directive({ selector: "td[pa-price]", exportAs: "discount" }) export class PaDiscountAmountDirective { private differ: KeyValueDiffer; constructor(private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef, private discount: DiscountService) { } @Input("pa-price") originalPrice: number; discountAmount: number; ngOnInit() { this.differ = this.keyValueDiffers.find(this.discount).create(); } ngOnChanges(changes: { [property: string]: SimpleChange }) { if (changes["originalPrice"] != null) { this.updateValue(); } } ngDoCheck() { if (this.differ.diff(this.discount) != null) { this.updateValue(); } } private updateValue() { this.discountAmount = this.originalPrice - this.discount.applyDiscount(this.originalPrice); } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/discountDisplay.component.ts ================================================ import { Component, Input } from "@angular/core"; import { DiscountService } from "./discount.service"; @Component({ selector: "paDiscountDisplay", template: `
The discount is {{discounter.discount}}
` }) export class PaDiscountDisplayComponent { constructor(public discounter: DiscountService) { } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/discountEditor.component.ts ================================================ import { Component, Input } from "@angular/core"; import { DiscountService } from "./discount.service"; @Component({ selector: "paDiscountEditor", template: `
` }) export class PaDiscountEditorComponent { constructor(public discounter: DiscountService) { } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/form.model.ts ================================================ import { FormControl, FormGroup, Validators } from "@angular/forms"; import { LimitValidator } from "./limit.formvalidator"; export class ProductFormControl extends FormControl { label: string; modelProperty: string; constructor(label:string, property:string, value: any, validator: any) { super(value, validator); this.label = label; this.modelProperty = property; } getValidationMessages() { let messages: string[] = []; if (this.errors) { for (let errorName in this.errors) { switch (errorName) { case "required": messages.push(`You must enter a ${this.label}`); break; case "minlength": messages.push(`A ${this.label} must be at least ${this.errors['minlength'].requiredLength} characters`); break; case "maxlength": messages.push(`A ${this.label} must be no more than ${this.errors['maxlength'].requiredLength} characters`); break; case "pattern": messages.push(`The ${this.label} contains illegal characters`); break; case "limit": messages.push(`A ${this.label} cannot be more than ${this.errors['limit'].limit}`); break; } } } return messages; } } export class ProductFormGroup extends FormGroup { constructor() { super({ name: new ProductFormControl("Name", "name", "", Validators.required), category: new ProductFormControl("Category", "category", "", Validators.compose([Validators.required, Validators.pattern("^[A-Za-z ]+$"), Validators.minLength(3), Validators.maxLength(10)])), price: new ProductFormControl("Price", "price", "", Validators.compose([Validators.required, LimitValidator.Limit(100), Validators.pattern("^[0-9\.]+$")])) }); } get productControls(): ProductFormControl[] { return Object.keys(this.controls) .map(k => this.controls[k] as ProductFormControl); } getValidationMessages(name: string): string[] { return (this.controls['name'] as ProductFormControl).getValidationMessages(); } getFormValidationMessages() : string[] { let messages: string[] = []; Object.values(this.controls).forEach(c => messages.push(...(c as ProductFormControl).getValidationMessages())); return messages; } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/iterator.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, SimpleChange, IterableDiffer, IterableDiffers, ChangeDetectorRef, ViewRef, IterableChangeRecord } from "@angular/core"; @Directive({ selector: "[paForOf]" }) export class PaIteratorDirective { private differ: IterableDiffer; private views: Map = new Map(); constructor(private container: ViewContainerRef, private template: TemplateRef, private differs: IterableDiffers, private changeDetector: ChangeDetectorRef) { } @Input("paForOf") dataSource: any; ngOnInit() { this.differ = >this.differs.find(this.dataSource).create(); } ngDoCheck() { let changes = this.differ.diff(this.dataSource); if (changes != null) { let arr: IterableChangeRecord[] = []; changes.forEachAddedItem(addition => arr.push(addition)); arr.forEach(addition => { let context = new PaIteratorContext(addition.item, addition.currentIndex, arr.length); context.view = this.container.createEmbeddedView(this.template, context); this.views.set(addition.trackById, context); }); let removals = false; changes.forEachRemovedItem(removal => { removals = true; let context = this.views.get(removal.trackById); if (context != null) { this.container.remove(this.container.indexOf(context.view)); this.views.delete(removal.trackById); } }); if (removals) { let index = 0; this.views.forEach(context => context.setData(index++, this.views.size)); } } } } class PaIteratorContext { index: number; odd: boolean; even: boolean; first: boolean; last: boolean; view: ViewRef; constructor(public $implicit: any, public position: number, total: number ) { this.setData(position, total); } setData(index: number, total: number) { this.index = index; this.odd = index % 2 == 1; this.even = !this.odd; this.first = index == 0; this.last = index == total - 1; } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/limit.formvalidator.ts ================================================ import { FormControl } from "@angular/forms"; export class LimitValidator { static Limit(limit:number) { return (control:FormControl) : {[key: string]: any} => { let val = Number(control.value); if (val != NaN && val > limit) { return {"limit": {"limit": limit, "actualValue": val}}; } else { return null; } } } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/productForm.component.css ================================================ div { background-color: lightcoral; } :host:hover { font-size: 25px; } :host-context(.angularApp) input { background-color: lightgray; } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/productForm.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/productForm.component.ts ================================================ import { Component, Output, EventEmitter, ViewEncapsulation } from "@angular/core"; import { Product } from "./product.model"; import { Model } from "./repository.model"; @Component({ selector: "paProductForm", templateUrl: "productForm.component.html" }) export class ProductFormComponent { newProduct: Product = new Product(); constructor(private model: Model) { } // @Output("paNewProduct") // newProductEvent = new EventEmitter(); submitForm(form: any) { //this.newProductEvent.emit(this.newProduct); this.model.saveProduct(this.newProduct); this.newProduct = new Product(); form.reset(); } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/productTable.component.html ================================================
NameCategoryPrice
{{i + 1}} {{item.name}} {{item.category}} {{ discount.discountAmount | currency:"USD":"symbol"}}
================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/productTable.component.ts ================================================ import { Component, Input, ViewChildren, QueryList } from "@angular/core"; import { Model } from "./repository.model"; import { Product } from "./product.model"; import { DiscountService } from "./discount.service"; @Component({ selector: "paProductTable", templateUrl: "productTable.component.html" }) export class ProductTableComponent { //discounter: DiscountService = new DiscountService(); constructor(private dataModel: Model) { } // @Input("model") // dataModel: Model; getProduct(key: number): Product { return this.dataModel.getProduct(key); } getProducts(): Product[] { return this.dataModel.getProducts(); } deleteProduct(key: number) { this.dataModel.deleteProduct(key); } taxRate: number = 0; dateObject: Date = new Date(2020, 1, 20); dateString: string = "2020-02-20T00:00:00.000Z"; dateNumber: number = 1582156800000; selectMap = { "Watersports": "stay dry", "Soccer": "score goals", "other": "have fun" } numberMap = { "=1": "one product", "=2": "two products", "other": "# products" } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; @Injectable() export class Model { //private dataSource: SimpleDataSource; private products: Product[]; private locator = (p:Product, id:number) => p.id == id; constructor(private dataSource: SimpleDataSource) { //this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } swapProduct() { let p = this.products.shift(); this.products.push(new Product(p.id, p.name, p.category, p.price)); } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/structure.directive.ts ================================================ import { Directive, SimpleChange, ViewContainerRef, TemplateRef, Input } from "@angular/core"; @Directive({ selector: "[paIf]" }) export class PaStructureDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("paIf") expressionResult: boolean; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["expressionResult"]; if (!change.isFirstChange() && !change.currentValue) { this.container.clear(); } else if (change.currentValue) { this.container.createEmbeddedView(this.template); } } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/template.html ================================================
================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/toggleView.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/toggleView.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "paToggleView", templateUrl: "toggleView.component.html" }) export class PaToggleView { showContent: boolean = true; } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/app/twoway.directive.ts ================================================ import { Input, Output, EventEmitter, Directive, HostBinding, HostListener, SimpleChange } from "@angular/core"; @Directive({ selector: "input[paModel]", exportAs: "paModel" }) export class PaModel { direction: string = "None"; @Input("paModel") modelProperty: string; @HostBinding("value") fieldValue: string = ""; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["modelProperty"]; if (change.currentValue != this.fieldValue) { this.fieldValue = changes["modelProperty"].currentValue || ""; this.direction = "Model"; } } @Output("paModelChange") update = new EventEmitter(); @HostListener("input", ["$event.target.value"]) updateValue(newValue: string) { this.fieldValue = newValue; this.update.emit(newValue); this.direction = "Element"; } } ================================================ FILE: Update for Angular 11/Chapter 19/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 19/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 19/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 19/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 19/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 19/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 19/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 19/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 19/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 19/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 19/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 20/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 20/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 20/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 20/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 20/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 20/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 20/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 20/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 20/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 20/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 20/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 20/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 20/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/addTax.pipe.ts ================================================ import { Pipe } from "@angular/core"; @Pipe({ name: "addTax" }) export class PaAddTaxPipe { defaultRate: number = 10; transform(value: any, rate?: any): number { let valueNumber = Number.parseFloat(value); let rateNumber = rate == undefined ? this.defaultRate : Number.parseInt(rate); return valueNumber + (valueNumber * (rateNumber / 100)); } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ProductComponent } from "./component"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { PaAttrDirective } from "./attr.directive"; import { PaModel } from "./twoway.directive"; import { PaStructureDirective } from "./structure.directive"; import { PaIteratorDirective } from "./iterator.directive"; import { PaCellColor } from "./cellColor.directive"; import { PaCellColorSwitcher } from "./cellColorSwitcher.directive"; import { ProductTableComponent } from "./productTable.component"; import { ProductFormComponent } from "./productForm.component"; import { PaToggleView } from "./toggleView.component"; import { PaAddTaxPipe } from "./addTax.pipe"; import { PaCategoryFilterPipe } from "./categoryFilter.pipe"; import { LOCALE_ID } from "@angular/core"; import localeFr from '@angular/common/locales/fr'; import { registerLocaleData } from '@angular/common'; import { PaDiscountDisplayComponent } from "./discountDisplay.component"; import { PaDiscountEditorComponent } from "./discountEditor.component"; import { DiscountService } from "./discount.service"; import { PaDiscountPipe } from "./discount.pipe"; import { PaDiscountAmountDirective } from "./discountAmount.directive"; import { SimpleDataSource } from "./datasource.model"; import { Model } from "./repository.model"; import { LogService, LOG_SERVICE, SpecialLogService, LogLevel, LOG_LEVEL} from "./log.service"; import { VALUE_SERVICE, PaDisplayValueDirective} from "./valueDisplay.directive"; let logger = new LogService(); logger.minimumLevel = LogLevel.DEBUG; registerLocaleData(localeFr); @NgModule({ imports: [BrowserModule, FormsModule, ReactiveFormsModule], declarations: [ProductComponent, PaAttrDirective, PaModel, PaStructureDirective, PaIteratorDirective, PaCellColor, PaCellColorSwitcher, ProductTableComponent, ProductFormComponent, PaToggleView, PaAddTaxPipe, PaCategoryFilterPipe, PaDiscountDisplayComponent, PaDiscountEditorComponent, PaDiscountPipe, PaDiscountAmountDirective, PaDisplayValueDirective], providers: [DiscountService, SimpleDataSource, Model, LogService, { provide: VALUE_SERVICE, useValue: "Apples" }], bootstrap: [ProductComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/attr.directive.ts ================================================ import { Directive, ElementRef, Attribute, Input, SimpleChange, Output, EventEmitter, HostListener, HostBinding } from "@angular/core"; import { Product } from "./product.model"; @Directive({ selector: "[pa-attr]" }) export class PaAttrDirective { @Input("pa-attr") @HostBinding("class") bgClass: string; @Input("pa-product") product: Product; @Output("pa-category") click = new EventEmitter(); @HostListener("click") triggerCustomEvent() { if (this.product != null) { this.click.emit(this.product.category); } } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/categoryFilter.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { Product } from "./product.model"; @Pipe({ name: "filter", pure: false }) export class PaCategoryFilterPipe { transform(products: Product[], category: string): Product[] { return category == undefined ? products : products.filter(p => p.category == category); } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/cellColor.directive.ts ================================================ import { Directive, HostBinding } from "@angular/core"; @Directive({ selector: "td[paApplyColor]" }) export class PaCellColor { @HostBinding("class") bgClass: string = ""; setColor(dark: Boolean) { this.bgClass = dark ? "bg-dark" : ""; } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/cellColorSwitcher.directive.ts ================================================ import { Directive, Input, Output, EventEmitter, SimpleChange, ContentChildren, QueryList } from "@angular/core"; import { PaCellColor } from "./cellColor.directive"; @Directive({ selector: "table" }) export class PaCellColorSwitcher { @Input("paCellDarkColor") modelProperty: Boolean; @ContentChildren(PaCellColor, {descendants: true}) contentChildren: QueryList; ngOnChanges(changes: { [property: string]: SimpleChange }) { this.updateContentChildren(changes["modelProperty"].currentValue); } ngAfterContentInit() { this.contentChildren.changes.subscribe(() => { setTimeout(() => this.updateContentChildren(this.modelProperty), 0); }); } private updateContentChildren(dark: Boolean) { if (this.contentChildren != null && dark != undefined) { this.contentChildren.forEach((child, index) => { child.setColor(index % 2 ? dark : !dark); }); } } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/component.ts ================================================ import { Component } from "@angular/core"; //import { Model } from "./repository.model"; //import { Product } from "./product.model"; //import { ProductFormGroup } from "./form.model"; @Component({ selector: "app", templateUrl: "template.html" }) export class ProductComponent { //model: Model = new Model(); //constructor(public model: Model) { } //addProduct(p: Product) { // this.model.saveProduct(p); //} } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/datasource.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class SimpleDataSource { private data:Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/discount.pipe.ts ================================================ import { Pipe, Injectable } from "@angular/core"; import { DiscountService } from "./discount.service"; import { LogService } from "./log.service"; @Pipe({ name: "discount", pure: false }) export class PaDiscountPipe { constructor(private discount: DiscountService, private logger: LogService) { } transform(price: number): number { if (price > 100) { this.logger.logInfoMessage(`Large price discounted: ${price}`); } return this.discount.applyDiscount(price); } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/discount.service.ts ================================================ import { Injectable, Inject } from "@angular/core"; import { LogService, LOG_SERVICE, LogLevel } from "./log.service"; @Injectable() export class DiscountService { private discountValue: number = 10; constructor(private logger: LogService) { } public get discount(): number { return this.discountValue; } public set discount(newValue: number) { this.discountValue = newValue || 0; } public applyDiscount(price: number) { this.logger.logInfoMessage(`Discount ${this.discount}` + ` applied to price: ${price}`); return Math.max(price - this.discountValue, 5); } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/discountAmount.directive.ts ================================================ import { Directive, HostBinding, Input, SimpleChange, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { DiscountService } from "./discount.service"; @Directive({ selector: "td[pa-price]", exportAs: "discount" }) export class PaDiscountAmountDirective { private differ: KeyValueDiffer; constructor(private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef, private discount: DiscountService) { } @Input("pa-price") originalPrice: number; discountAmount: number; ngOnInit() { this.differ = this.keyValueDiffers.find(this.discount).create(); } ngOnChanges(changes: { [property: string]: SimpleChange }) { if (changes["originalPrice"] != null) { this.updateValue(); } } ngDoCheck() { if (this.differ.diff(this.discount) != null) { this.updateValue(); } } private updateValue() { this.discountAmount = this.originalPrice - this.discount.applyDiscount(this.originalPrice); } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/discountDisplay.component.ts ================================================ import { Component, Input } from "@angular/core"; import { DiscountService } from "./discount.service"; @Component({ selector: "paDiscountDisplay", template: `
The discount is {{discounter.discount}}
` }) export class PaDiscountDisplayComponent { constructor(public discounter: DiscountService) { } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/discountEditor.component.ts ================================================ import { Component, Input } from "@angular/core"; import { DiscountService } from "./discount.service"; @Component({ selector: "paDiscountEditor", template: `
` }) export class PaDiscountEditorComponent { constructor(public discounter: DiscountService) { } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/form.model.ts ================================================ import { FormControl, FormGroup, Validators } from "@angular/forms"; import { LimitValidator } from "./limit.formvalidator"; export class ProductFormControl extends FormControl { label: string; modelProperty: string; constructor(label:string, property:string, value: any, validator: any) { super(value, validator); this.label = label; this.modelProperty = property; } getValidationMessages() { let messages: string[] = []; if (this.errors) { for (let errorName in this.errors) { switch (errorName) { case "required": messages.push(`You must enter a ${this.label}`); break; case "minlength": messages.push(`A ${this.label} must be at least ${this.errors['minlength'].requiredLength} characters`); break; case "maxlength": messages.push(`A ${this.label} must be no more than ${this.errors['maxlength'].requiredLength} characters`); break; case "pattern": messages.push(`The ${this.label} contains illegal characters`); break; case "limit": messages.push(`A ${this.label} cannot be more than ${this.errors['limit'].limit}`); break; } } } return messages; } } export class ProductFormGroup extends FormGroup { constructor() { super({ name: new ProductFormControl("Name", "name", "", Validators.required), category: new ProductFormControl("Category", "category", "", Validators.compose([Validators.required, Validators.pattern("^[A-Za-z ]+$"), Validators.minLength(3), Validators.maxLength(10)])), price: new ProductFormControl("Price", "price", "", Validators.compose([Validators.required, LimitValidator.Limit(100), Validators.pattern("^[0-9\.]+$")])) }); } get productControls(): ProductFormControl[] { return Object.keys(this.controls) .map(k => this.controls[k] as ProductFormControl); } getValidationMessages(name: string): string[] { return (this.controls['name'] as ProductFormControl).getValidationMessages(); } getFormValidationMessages() : string[] { let messages: string[] = []; Object.values(this.controls).forEach(c => messages.push(...(c as ProductFormControl).getValidationMessages())); return messages; } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/iterator.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, SimpleChange, IterableDiffer, IterableDiffers, ChangeDetectorRef, ViewRef, IterableChangeRecord } from "@angular/core"; @Directive({ selector: "[paForOf]" }) export class PaIteratorDirective { private differ: IterableDiffer; private views: Map = new Map(); constructor(private container: ViewContainerRef, private template: TemplateRef, private differs: IterableDiffers, private changeDetector: ChangeDetectorRef) { } @Input("paForOf") dataSource: any; ngOnInit() { this.differ = >this.differs.find(this.dataSource).create(); } ngDoCheck() { let changes = this.differ.diff(this.dataSource); if (changes != null) { let arr: IterableChangeRecord[] = []; changes.forEachAddedItem(addition => arr.push(addition)); arr.forEach(addition => { let context = new PaIteratorContext(addition.item, addition.currentIndex, arr.length); context.view = this.container.createEmbeddedView(this.template, context); this.views.set(addition.trackById, context); }); let removals = false; changes.forEachRemovedItem(removal => { removals = true; let context = this.views.get(removal.trackById); if (context != null) { this.container.remove(this.container.indexOf(context.view)); this.views.delete(removal.trackById); } }); if (removals) { let index = 0; this.views.forEach(context => context.setData(index++, this.views.size)); } } } } class PaIteratorContext { index: number; odd: boolean; even: boolean; first: boolean; last: boolean; view: ViewRef; constructor(public $implicit: any, public position: number, total: number ) { this.setData(position, total); } setData(index: number, total: number) { this.index = index; this.odd = index % 2 == 1; this.even = !this.odd; this.first = index == 0; this.last = index == total - 1; } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/limit.formvalidator.ts ================================================ import { FormControl } from "@angular/forms"; export class LimitValidator { static Limit(limit:number) { return (control:FormControl) : {[key: string]: any} => { let val = Number(control.value); if (val != NaN && val > limit) { return {"limit": {"limit": limit, "actualValue": val}}; } else { return null; } } } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/log.service.ts ================================================ import { Injectable, InjectionToken } from "@angular/core"; export const LOG_SERVICE = new InjectionToken("logger"); export const LOG_LEVEL = new InjectionToken("log_level"); export enum LogLevel { DEBUG, INFO, ERROR } @Injectable() export class LogService { minimumLevel: LogLevel = LogLevel.INFO; logInfoMessage(message: string) { this.logMessage(LogLevel.INFO, message); } logDebugMessage(message: string) { this.logMessage(LogLevel.DEBUG, message); } logErrorMessage(message: string) { this.logMessage(LogLevel.ERROR, message); } logMessage(level: LogLevel, message: string) { if (level >= this.minimumLevel) { console.log(`Message (${LogLevel[level]}): ${message}`); } } } @Injectable() export class SpecialLogService extends LogService { constructor() { super() this.minimumLevel = LogLevel.DEBUG; } logMessage(level: LogLevel, message: string) { if (level >= this.minimumLevel) { console.log(`Special Message (${LogLevel[level]}): ${message}`); } } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/productForm.component.css ================================================ div { background-color: lightcoral; } :host:hover { font-size: 25px; } :host-context(.angularApp) input { background-color: lightgray; } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/productForm.component.html ================================================
View Child Value:
Content Child Value:
================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/productForm.component.ts ================================================ import { Component, Output, EventEmitter, ViewEncapsulation, Inject, SkipSelf } from "@angular/core"; import { Product } from "./product.model"; import { Model } from "./repository.model"; import { VALUE_SERVICE } from "./valueDisplay.directive"; @Component({ selector: "paProductForm", templateUrl: "productForm.component.html", viewProviders: [{ provide: VALUE_SERVICE, useValue: "Oranges" }] }) export class ProductFormComponent { newProduct: Product = new Product(); constructor(private model: Model, @Inject(VALUE_SERVICE) @SkipSelf() private serviceValue: string) { console.log("Service Value: " + serviceValue); } submitForm(form: any) { this.model.saveProduct(this.newProduct); this.newProduct = new Product(); form.reset(); } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/productTable.component.html ================================================
NameCategoryPrice
{{i + 1}} {{item.name}} {{item.category}} {{ discount.discountAmount | currency:"USD":"symbol"}}
================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/productTable.component.ts ================================================ import { Component, Input, ViewChildren, QueryList } from "@angular/core"; import { Model } from "./repository.model"; import { Product } from "./product.model"; import { DiscountService } from "./discount.service"; import { LogService } from "./log.service"; @Component({ selector: "paProductTable", templateUrl: "productTable.component.html", providers:[LogService] }) export class ProductTableComponent { constructor(private dataModel: Model) { } getProduct(key: number): Product { return this.dataModel.getProduct(key); } getProducts(): Product[] { return this.dataModel.getProducts(); } deleteProduct(key: number) { this.dataModel.deleteProduct(key); } taxRate: number = 0; dateObject: Date = new Date(2020, 1, 20); dateString: string = "2020-02-20T00:00:00.000Z"; dateNumber: number = 1582156800000; selectMap = { "Watersports": "stay dry", "Soccer": "score goals", "other": "have fun" } numberMap = { "=1": "one product", "=2": "two products", "other": "# products" } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; @Injectable() export class Model { //private dataSource: SimpleDataSource; private products: Product[]; private locator = (p:Product, id:number) => p.id == id; constructor(private dataSource: SimpleDataSource) { //this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } swapProduct() { let p = this.products.shift(); this.products.push(new Product(p.id, p.name, p.category, p.price)); } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/structure.directive.ts ================================================ import { Directive, SimpleChange, ViewContainerRef, TemplateRef, Input } from "@angular/core"; @Directive({ selector: "[paIf]" }) export class PaStructureDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("paIf") expressionResult: boolean; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["expressionResult"]; if (!change.isFirstChange() && !change.currentValue) { this.container.clear(); } else if (change.currentValue) { this.container.createEmbeddedView(this.template); } } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/template.html ================================================
================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/toggleView.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/toggleView.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "paToggleView", templateUrl: "toggleView.component.html" }) export class PaToggleView { showContent: boolean = true; } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/twoway.directive.ts ================================================ import { Input, Output, EventEmitter, Directive, HostBinding, HostListener, SimpleChange } from "@angular/core"; @Directive({ selector: "input[paModel]", exportAs: "paModel" }) export class PaModel { direction: string = "None"; @Input("paModel") modelProperty: string; @HostBinding("value") fieldValue: string = ""; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["modelProperty"]; if (change.currentValue != this.fieldValue) { this.fieldValue = changes["modelProperty"].currentValue || ""; this.direction = "Model"; } } @Output("paModelChange") update = new EventEmitter(); @HostListener("input", ["$event.target.value"]) updateValue(newValue: string) { this.fieldValue = newValue; this.update.emit(newValue); this.direction = "Element"; } } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/app/valueDisplay.directive.ts ================================================ import { Directive, InjectionToken, Inject, HostBinding, Host, Optional} from "@angular/core"; export const VALUE_SERVICE = new InjectionToken("value_service"); @Directive({ selector: "[paDisplayValue]" }) export class PaDisplayValueDirective { constructor( @Inject(VALUE_SERVICE) @Host() @Optional() serviceValue: string) { this.elementContent = serviceValue || "No Value"; } @HostBinding("textContent") elementContent: string; } ================================================ FILE: Update for Angular 11/Chapter 20/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 20/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 20/example/src/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 20/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 20/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 20/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 20/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 20/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 20/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 20/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 20/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 21/example/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 21/example/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "example": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/example", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "example:build" }, "configurations": { "production": { "browserTarget": "example:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "example:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "example:serve" }, "configurations": { "production": { "devServerTarget": "example:serve:production" } } } } } }, "defaultProject": "example" } ================================================ FILE: Update for Angular 11/Chapter 21/example/dist/example/3rdpartylicenses.txt ================================================ @angular/common MIT @angular/core MIT @angular/platform-browser MIT bootstrap MIT The MIT License (MIT) Copyright (c) 2011-2019 Twitter, Inc. Copyright (c) 2011-2019 The Bootstrap Authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. css-loader MIT Copyright JS Foundation and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. rxjs Apache-2.0 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. zone.js MIT The MIT License Copyright (c) 2010-2020 Google LLC. http://angular.io/license Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Update for Angular 11/Chapter 21/example/dist/example/index.html ================================================ Example ================================================ FILE: Update for Angular 11/Chapter 21/example/dist/example/main.f78bdaa2683ef468e3b3.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function r(t){return"function"==typeof t}n.r(e);let s=!1;const o={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function i(t){setTimeout(()=>{throw t},0)}const l={closed:!0,next(t){},error(t){if(o.useDeprecatedSynchronousErrorHandling)throw t;i(t)},complete(){}},u=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const a=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let h=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof a?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends h{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[f](){return this}static create(t,e,n){const r=new p(t,e,n);return r.syncErrorThrowable=!1,r}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class _ extends p{constructor(t,e,n,s){let o;super(),this._parentSubscriber=t;let i=this;r(e)?o=e:e&&(o=e.next,n=e.error,s=e.complete,e!==l&&(i=Object.create(e),r(i.unsubscribe)&&this.add(i.unsubscribe.bind(i)),i.unsubscribe=this.unsubscribe.bind(this))),this._context=i,this._next=o,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;o.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=o;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):i(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;i(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);o.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),o.useDeprecatedSynchronousErrorHandling)throw n;i(n)}}__tryOrSetError(t,e,n){if(!o.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(r){return o.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=r,t.syncErrorThrown=!0,!0):(i(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const y=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function m(t){return t}let g=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:r}=this,s=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(l)}(t,e,n);if(s.add(r?r.call(s,this.source):this.source||o.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),o.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=v(e))((e,n)=>{let r;r=this.subscribe(e=>{try{t(e)}catch(s){n(s),r&&r.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[y](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?m:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=v(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function v(t){if(t||(t=o.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends h{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends p{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends g{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new C(this)}lift(t){const e=new x(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,r=e.slice();for(let s=0;snew x(t,e),t})();class x extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):h.EMPTY}}class k{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new T(t,this.project,this.thisArg))}}class T extends p{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}const S=t=>e=>{for(let n=0,r=t.length;n{if(t&&"function"==typeof t[y])return o=t,t=>{const e=o[y]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if((e=t)&&"number"==typeof e.length&&"function"!=typeof e)return S(t);var e,n,r,s,o;if((n=t)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return s=t,t=>(s.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,i),t);if(t&&"function"==typeof t[A])return r=t,t=>{const e=r[A]();for(;;){let r;try{r=e.next()}catch(n){return t.error(n),t}if(r.done){t.complete();break}if(t.next(r.value),t.closed)break}return"function"==typeof e.return&&t.add(()=>{e.return&&e.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class D extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class j extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function H(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?r=>r.pipe(H((n,r)=>{return(s=t(n,r),s instanceof g?s:new g(O(s))).pipe(function(t,e){return function(e){return e.lift(new k(t,void 0))}}((t,s)=>e(n,t,r,s)));var s},n)):("number"==typeof e&&(n=e),e=>e.lift(new N(t,n)))}class N{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new P(t,this.project,this.concurrent))}}class P extends j{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function R(){return function(t){return t.lift(new M(t))}}class M{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const r=new F(t,n),s=e.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class F extends p{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class V extends g{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new h,t.add(this.source.subscribe(new B(this.getSubject(),this))),t.closed&&(this._connection=null,t=h.EMPTY)),t}refCount(){return R()(this)}}const L=(()=>{const t=V.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class B extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function Z(){return new E}function z(t){return{toString:t}.toString()}const $="__parameters__";function U(t,e,n){return z(()=>{const r=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return r.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,r){const s=t.hasOwnProperty($)?t[$]:Object.defineProperty(t,$,{value:[]})[$];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const W=U("Inject",t=>({token:t})),q=U("Optional"),Q=U("Self"),G=U("SkipSelf");function J(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(J).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function K(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}function Y(t){for(let e in t)if(t[e]===Y)return e;throw Error("Could not find renamed property on target object.")}function X(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function tt(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function et(t){return nt(t,st)||nt(t,it)}function nt(t,e){return t.hasOwnProperty(e)?t[e]:null}function rt(t){return t&&(t.hasOwnProperty(ot)||t.hasOwnProperty(lt))?t[ot]:null}const st=Y({"\u0275prov":Y}),ot=Y({"\u0275inj":Y}),it=Y({ngInjectableDef:Y}),lt=Y({ngInjectorDef:Y});class ut{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=X({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}var ct=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({});const at="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=at||ft||ht||dt,_t=Y({__forward_ref__:Y});function yt(t){return t.__forward_ref__=yt,t.toString=function(){return J(this())},t}function mt(t){return"function"==typeof(e=t)&&e.hasOwnProperty(_t)&&e.__forward_ref__===yt?t():t;var e}function gt(t,e){t.forEach(t=>Array.isArray(t)?gt(t,e):e(t))}var vt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const bt={},wt=[],Ct=Y({"\u0275cmp":Y}),Et=Y({"\u0275dir":Y}),xt=Y({"\u0275pipe":Y}),kt=Y({"\u0275mod":Y}),Tt=Y({"\u0275loc":Y}),St=Y({"\u0275fac":Y}),It=Y({__NG_ELEMENT_ID__:Y});let At=0;function Ot(t){return Pt(t)||function(t){return t[Et]||null}(t)}function Dt(t){return function(t){return t[xt]||null}(t)}const jt={};function Ht(t){const e={type:t.type,bootstrap:t.bootstrap||wt,declarations:t.declarations||wt,imports:t.imports||wt,exports:t.exports||wt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&z(()=>{jt[t.id]=t.type}),e}function Nt(t,e){if(null==t)return bt;const n={};for(const r in t)if(t.hasOwnProperty(r)){let s=t[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,e&&(e[s]=o)}return n}function Pt(t){return t[Ct]||null}function Rt(t,e){const n=t[kt]||null;if(!n&&!0===e)throw new Error(`Type ${J(t)} does not have '\u0275mod' property.`);return n}function Mt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():function(t){return"string"==typeof t?t:null==t?"":""+t}(t)}var Ft=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});let Vt;function Lt(t){const e=Vt;return Vt=t,e}function Bt(t,e,n){const r=et(t);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&Ft.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${J(t)}]`)}const Zt={},zt=/\n/gm,$t="__source",Ut=Y({provide:String,useValue:Y});let Wt=void 0;function qt(t){const e=Wt;return Wt=t,e}function Qt(t,e=Ft.Default){if(void 0===Wt)throw new Error("inject() must be called from an injection context");return null===Wt?Bt(t,void 0,e):Wt.get(t,e&Ft.Optional?null:void 0,e)}function Gt(t,e=Ft.Default){return(Vt||Qt)(mt(t),e)}function Jt(t){const e=[];for(let n=0;nvoid 0!==Kt?Kt:"undefined"!=typeof document?document:void 0};function oe(t){for(;Array.isArray(t);)t=t[0];return t}function ie(t,e){return oe(e[t.index])}function le(t,e){const n=e[t];return Xt(n)?n:n[0]}function ue(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function ce(t){return 128==(128&t[2])}function ae(t,e){return null==e?null:t[e]}function he(t){t[18]=0}function de(t,e){t[5]+=e;let n=t,r=t[3];for(;null!==r&&(1===e&&1===n[5]||-1===e&&0===n[5]);)r[5]+=e,n=r,r=r[3]}const fe={lFrame:Oe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function pe(){return fe.bindingsEnabled}function _e(){return fe.lFrame.lView}function ye(){return fe.lFrame.tView}function me(){let t=ge();for(;null!==t&&64===t.type;)t=t.parent;return t}function ge(){return fe.lFrame.currentTNode}function ve(t,e){const n=fe.lFrame;n.currentTNode=t,n.isParent=e}function be(){return fe.lFrame.isParent}function we(){return fe.isInCheckNoChangesMode}function Ce(t){fe.isInCheckNoChangesMode=t}function Ee(t,e){const n=fe.lFrame;n.bindingIndex=n.bindingRootIndex=t,xe(e)}function xe(t){fe.lFrame.currentDirectiveIndex=t}function ke(t){fe.lFrame.currentQueryIndex=t}function Te(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Se(t,e,n){if(n&Ft.SkipSelf){let r=e,s=t;for(;r=r.parent,!(null!==r||n&Ft.Host||(r=Te(s),null===r)||(s=s[15],10&r.type)););if(null===r)return!1;e=r,t=s}const r=fe.lFrame=Ae();return r.currentTNode=e,r.lView=t,!0}function Ie(t){const e=Ae(),n=t[1];fe.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Ae(){const t=fe.lFrame,e=null===t?null:t.child;return null===e?Oe(t):e}function Oe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function De(){const t=fe.lFrame;return fe.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const je=De;function He(){const t=De();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ne(t){fe.lFrame.selectedIndex=t}let Pe=!0,Re=!1;function Me(){return Re=!0,Pe}function Fe(t,e){return t.hasOwnProperty(St)?t[St]:null}class Ve extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function Le(t,e){const n=e?" in "+e:"";throw new Ve("201",`No provider for ${Mt(t)} found${n}`)}class Be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function Ze(){const t=$e(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===bt)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ze(t,e,n,r){const s=$e(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:bt,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],u=i[l];o[l]=new Be(u&&u.currentValue,e,i===bt),t[r]=e}function $e(t){return t.__ngSimpleChanges__||null}function Ue(t,e){for(let n=e.directiveStart,r=e.directiveEnd;n=r)break}else e[i]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e&&(t[2]+=2048,o.call(i)):o.call(i)}const Ke=-1;class Ye{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Xe(t,e,n){const r=re(t);let s=0;for(;se){i=o-1;break}}}for(;o>16,r=e;for(;n>0;)r=r[15],n--;return r}let sn=!0;function on(t){const e=sn;return sn=t,e}let ln=0;function un(t,e){const n=an(t,e);if(-1!==n)return n;const r=e[1];r.firstCreatePass&&(t.injectorIndex=e.length,cn(r.data,t),cn(e,null),cn(r.blueprint,null));const s=hn(t,e),o=t.injectorIndex;if(s!==Ke){const t=nn(s),n=rn(s,e),r=n[1].data;for(let s=0;s<8;s++)e[o+s]=n[t+s]|r[t+s]}return e[o+8]=s,o}function cn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function an(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function hn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,r=null,s=e;for(;null!==s;){const t=s[1],e=t.type;if(r=2===e?t.declTNode:1===e?s[6]:null,null===r)return Ke;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return Ke}function dn(t,e,n){!function(t,e,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(It)&&(r=n[It]),null==r&&(r=n[It]=ln++);const s=255&r,o=1<>20,a=s?l+c:t.directiveEnd;for(let h=r?l:l+c;h=u&&t.type===n)return h}if(s){const t=i[u];if(t&&ne(t)&&t.type===n)return u}return null}(l,i,n,null==r?function(t){return 2==(2&t.flags)}(l)&&sn:r!=i&&0!=(3&l.type),s&Ft.Host&&o===l);return null!==u?gn(e,i,u,l):_n}function gn(t,e,n,r){let s=t[n];const o=e.data;if(s instanceof Ye){const i=s;i.resolving&&function(t,e){throw new Ve("200","Circular dependency in DI detected for "+t)}(Mt(o[n]));const l=on(i.canSeeViewProviders);i.resolving=!0;const u=i.injectImpl?Lt(i.injectImpl):null;Se(t,r,Ft.Default);try{s=t[n]=i.factory(void 0,o,t,r),e.firstCreatePass&&n>=r.directiveStart&&function(t,e,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=e.type.prototype;if(r){const r=((i=e).type.prototype.ngOnChanges&&(i.setInput=ze),Ze);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r)}var i;s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e)}finally{null!==u&&Lt(u),on(l),i.resolving=!1,je()}}return s}function vn(t,e,n){const r=64&t,s=32&t;let o;return o=128&t?r?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:r?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(o&1<=0?255&e:yn:e}(n);if("function"==typeof o){if(!Se(e,t,r))return r&Ft.Host?fn(s,n,r):pn(e,n,r,s);try{const t=o();if(null!=t||r&Ft.Optional)return t;Le(n)}finally{je()}}else if("number"==typeof o){let s=null,i=an(t,e),l=Ke,u=r&Ft.Host?e[16][6]:null;for((-1===i||r&Ft.SkipSelf)&&(l=-1===i?hn(t,e):e[i+8],l!==Ke&&bn(r,!1)?(s=e[1],i=nn(l),e=rn(l,e)):i=-1);-1!==i;){const t=e[1];if(vn(o,i,t.data)){const t=mn(i,e,n,s,r,u);if(t!==_n)return t}l=e[i+8],l!==Ke&&bn(r,e[1].data[i+8]===u)&&vn(o,i,e)?(s=t,i=nn(l),e=rn(l,e)):i=-1}}}return pn(e,n,r,s)}(this._tNode,this._lView,t,void 0,e)}}function Cn(t){return t.ngDebugContext}function En(t){return t.ngOriginalError}function xn(t,...e){t.error(...e)}class kn{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),r=function(t){return t.ngErrorLogger||xn}(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?Cn(t)?Cn(t):this._findContext(En(t)):null}_findOriginalError(t){let e=En(t);for(;e&&En(e);)e=En(e);return e}}function Tn(t,e){t.__ngContext__=e}const Sn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(pt))();function In(t){return t instanceof Function?t():t}var An=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function On(t,e){return(void 0)(t,e)}function Dn(t){const e=t[3];return te(e)?e[3]:e}function jn(t){return Nn(t[13])}function Hn(t){return Nn(t[4])}function Nn(t){for(;null!==t&&!te(t);)t=t[4];return t}function Pn(t,e,n,r,s){if(null!=r){let o,i=!1;te(r)?o=r:Xt(r)&&(i=!0,r=r[0]);const l=oe(r);0===t&&null!==n?null==s?Vn(e,n,l):Fn(e,n,l,s||null,!0):1===t&&null!==n?Fn(e,n,l,s||null,!0):2===t?function(t,e,n){const r=function(t,e){return re(t)?t.parentNode(e):e.parentNode}(t,e);r&&function(t,e,n,r){re(t)?t.removeChild(e,n,r):e.removeChild(n)}(t,r,e,n)}(e,l,i):3===t&&e.destroyNode(l),null!=o&&function(t,e,n,r,s){const o=n[7];o!==oe(n)&&Pn(e,t,r,o,s);for(let i=10;i=0?t[l]():t[-l].unsubscribe(),r+=2}else n[r].call(t[n[r+1]]);e[7]=null}}(t,e),1===e[1].type&&re(e[11])&&e[11].destroy();const n=e[17];if(null!==n&&te(e[3])){n!==e[3]&&function(t,e){const n=t[9],r=n.indexOf(e),s=e[3];1024&e[2]&&(e[2]&=-1025,de(s,-1)),n.splice(r,1)}(n,e);const r=e[19];null!==r&&r.detachView(t)}}}function Fn(t,e,n,r,s){re(t)?t.insertBefore(e,n,r,s):e.insertBefore(n,r,s)}function Vn(t,e,n){re(t)?t.appendChild(e,n):e.appendChild(n)}function Ln(t,e,n,r,s){null!==r?Fn(t,e,n,r,s):Vn(t,e,n)}function Bn(t,e,n,r){const s=function(t,e,n){return function(t,e,n){let r=e;for(;null!==r&&40&r.type;)r=(e=r).parent;if(null===r)return n[0];if(2&r.flags){const e=t.data[r.directiveStart].encapsulation;if(e===vt.None||e===vt.Emulated)return null}return ie(r,n)}(t,e.parent,n)}(t,r,e),o=e[11],i=function(t,e,n){return function(t,e,n){return 40&t.type?ie(t,n):null}(t,0,n)}(r.parent||e[6],0,e);if(null!=s)if(Array.isArray(n))for(let l=0;lo?"":s[a+1].toLowerCase();const e=8&r?t:null;if(e&&-1!==qn(e,c,0)||2&r&&c!==t){if(Xn(r))return!1;i=!0}}}}else{if(!i&&!Xn(r)&&!Xn(u))return!1;if(i&&Xn(u))continue;i=!1,r=u|1&r}}return Xn(r)||i}function Xn(t){return 0==(1&t)}function tr(t,e,n,r){if(null===e)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Xn(i)||(e+=nr(o,s),s=""),r=i,o=o||!Xn(r);n++}return""!==s&&(e+=nr(o,s)),e}const sr={};function or(t,e){const n=t.contentQueries;if(null!==n)for(let r=0;rYt&&function(t,e,n,r){if(!r)if(3==(3&e[2])){const n=t.preOrderCheckHooks;null!==n&&We(e,n,20)}else{const n=t.preOrderHooks;null!==n&&qe(e,n,0,20)}Ne(20)}(t,e,0,we()),n(r,s)}finally{Ne(o)}}function fr(t){const e=t.tView;return null===e||e.incompleteFirstPass?t.tView=pr(1,null,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function pr(t,e,n,r,s,o,i,l,u,c){const a=Yt+r,h=a+s,d=function(t,e){const n=[];for(let r=0;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=o&&n.push(o),n.push(r,s,i)}}function mr(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function gr(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function vr(t,e,n){if(n){if(e.exportAs)for(let r=0;r0&&Tr(n)}}function Tr(t){for(let n=jn(t);null!==n;n=Hn(n))for(let t=10;t0&&Tr(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Tr(r)}}function Sr(t,e){const n=le(e,t),r=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Hr(t,e,n){let r=n?t.styles:null,s=n?t.classes:null,o=0;if(null!==e)for(let i=0;ithis.processProvider(n,t,e)),gt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Nr,Ur(void 0,this));const o=this.records.get(Rr);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof t?null:J(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Zt,n=Ft.Default){this.assertNotDestroyed();const r=qt(this);try{if(!(n&Ft.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof ut)&&et(t);e=n&&this.injectableDefInScope(n)?Ur($r(t),Mr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Ft.Self?Br():this.parent).get(t,e=n&Ft.Optional&&e===Zt?null:e)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(J(t)),r)throw o;return function(t,e,n,r){const s=t.ngTempTokenPath;throw e[$t]&&s.unshift(e[$t]),t.message=function(t,e,n,r=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=J(e);if(Array.isArray(e))s=e.map(J).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t.push(n+":"+("string"==typeof r?JSON.stringify(r):J(r)))}s=`{${t.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${t.replace(zt,"\n ")}`}("\n"+t.message,s,n,r),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(o,t,"R3InjectorError",this.source)}throw o}finally{qt(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(J(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=mt(t)))return!1;let r=rt(t);const s=null==r&&t.ngModule||void 0,o=void 0===s?t:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=rt(s)),null==r)return!1;if(null!=r.imports&&!i){let t;n.push(o);try{gt(r.imports,r=>{this.processInjectorType(r,e,n)&&(void 0===t&&(t=[]),t.push(r))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,r||Vr))}}this.injectorDefTypes.add(o),this.records.set(o,Ur(r.factory,Mr));const l=r.providers;if(null!=l&&!i){const e=t;gt(l,t=>this.processProvider(t,e,l))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let r=qr(t=mt(t))?t:mt(t&&t.provide);const s=function(t,e,n){return Wr(t)?Ur(void 0,t.useValue):Ur(function(t,e,n){let r=void 0;if(qr(t)){const e=mt(t);return Fe(e)||$r(e)}if(Wr(t))r=()=>mt(t.useValue);else if((s=t)&&s.useFactory)r=()=>t.useFactory(...Jt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))r=()=>Gt(mt(t.useExisting));else{const e=mt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return Fe(e)||$r(e);r=()=>new e(...Jt(t.deps))}var s;return r}(t),Mr)}(t);if(qr(t)||!0!==t.multi)this.records.get(r);else{let e=this.records.get(r);e||(e=Ur(void 0,Mr,!0),e.factory=()=>Jt(e.multi),this.records.set(r,e)),r=t,e.multi.push(t)}this.records.set(r,s)}hydrate(t,e){var n;return e.value===Mr&&(e.value=Fr,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function $r(t){const e=et(t),n=null!==e?e.factory:Fe(t);if(null!==n)return n;const r=rt(t);if(null!==r)return r.factory;if(t instanceof ut)throw new Error(`Token ${J(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=function(t,e){const n=[];for(let r=0;rn.factory(t):()=>new t}(t);throw new Error("unreachable")}function Ur(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Wr(t){return null!==t&&"object"==typeof t&&Ut in t}function qr(t){return"function"==typeof t}const Qr=function(t,e,n){return function(t,e=null,n=null,r){const s=Zr(t,e,n,r);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Gr=(()=>{class t{static create(t,e){return Array.isArray(t)?Qr(t,e,""):Qr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Zt,t.NULL=new Pr,t.\u0275prov=X({token:t,providedIn:"any",factory:()=>Gt(Nr)}),t.__NG_ELEMENT_ID__=-1,t})();function Jr(t,e){Ue(ue(t)[1],me())}let Kr=null;function Yr(){if(!Kr){const t=pt.Symbol;if(t&&t.iterator)Kr=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(as=t.toLowerCase().replace(/_/g,"-"))}class ds{}class fs{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${J(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ps=(()=>{class t{}return t.NULL=new fs,t})();function _s(...t){}function ys(t,e){return new gs(ie(t,e))}const ms=function(){return ys(me(),_e())};let gs=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=ms,t})();class vs{}let bs=(()=>{class t{}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>null}),t})();class ws{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Cs=new ws("11.0.2");class Es{constructor(){}supports(t){return Xr(t)}create(t){return new ks(t)}}const xs=(t,e)=>e;class ks{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||xs}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,r=0,s=null;for(;e||n;){const o=!n||e&&e.currentIndex{r=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,t,r,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,r,e),o=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,r){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,r)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,r)):t=this._addAfter(new Ts(e,n),s,r),t}_verifyReinsertion(t,e,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const r=t._prevRemoved,s=t._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const 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 Is),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Is),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class Ts{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Ss{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class Is{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Ss,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function As(t,e,n){const r=t.previousIndex;if(null===r)return r;let s=0;return n&&r{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new js(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class js{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Hs=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Es])}),t})(),Ns=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new G,new q]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=X({token:t,providedIn:"root",factory:()=>new t([new Os])}),t})();function Ps(t,e,n,r,s=!1){for(;null!==n;){const o=e[n.index];if(null!==o&&r.push(oe(o)),te(o))for(let t=10;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}!function(t,e){if(!(256&e[2])){const n=e[11];re(n)&&n.destroyNode&&zn(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Mn(t[1],t);for(;e;){let n=null;if(Xt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Xt(e)&&Mn(e[1],e),e=e[3];null===e&&(e=t),Xt(e)&&Mn(e[1],e),n=e&&e[4]}e=n}}(e)}}(this._lView[1],this._lView)}onDestroy(t){!function(t,e,n,r){const s=(o=e)[7]||(o[7]=[]);var o;s.push(null),t.firstCreatePass&&function(t){return t.cleanup||(t.cleanup=[])}(t).push(r,s.length-1)}(this._lView[1],this._lView,0,t)}markForCheck(){!function(t){for(;t;){t[2]|=64;const e=Dn(t);if(0!=(512&t[2])&&!e)return t;t=e}}(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Ar(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Ce(!0);try{Ar(t,e,n)}finally{Ce(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,zn(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}{constructor(t){super(t),this._view=t}detectChanges(){Or(this._view)}checkNoChanges(){!function(t){Ce(!0);try{Or(t)}finally{Ce(!1)}}(this._view)}get context(){return null}}const Ms=[new Os],Fs=new Hs([new Es]),Vs=new Ns(Ms);class Ls{}const Bs={};class Zs extends ps{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Pt(t);return new Us(e,this.ngModule)}}function zs(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const $s=new ut("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Sn});class Us extends ds{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(rr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return zs(this.componentDef.inputs)}get outputs(){return zs(this.componentDef.outputs)}create(t,e,n,r){const s=(r=r||this.ngModule)?function(t,e){return{get:(n,r,s)=>{const o=t.get(n,Bs,s);return o!==Bs||r===Bs?o:e.get(n,r,s)}}}(t,r.injector):t,o=s.get(vs,se),i=s.get(bs,null),l=o.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(re(t))return t.selectRootElement(e,n===vt.ShadowDom);let r="string"==typeof e?t.querySelector(e):e;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Rn(o.createRenderer(null,this.componentDef),u,function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(u)),a=this.componentDef.onPush?576:528,h={components:[],scheduler:Sn,clean:jr,playerHandler:null,flags:0},d=pr(0,null,null,1,0,null,null,null,null,null),f=ir(null,d,h,a,null,null,o,l,i,s);let p,_;Ie(f);try{const t=function(t,e,n,r,s,o){const i=n[1];n[20]=t;const l=lr(i,20,2,"#host",null),u=l.mergedAttrs=e.hostAttrs;null!==u&&(Hr(l,u,!0),null!==t&&(Xe(s,t,u),null!==l.classes&&Wn(s,t,l.classes),null!==l.styles&&Un(s,t,l.styles)));const c=r.createRenderer(t,e),a=ir(n,fr(e),null,e.onPush?64:16,n[20],l,r,c,null,null);return i.firstCreatePass&&(dn(un(l,n),i,e.type),gr(i,l),br(l,n.length,1)),Ir(n,a),n[20]=a}(c,this.componentDef,f,o,l);if(c)if(n)Xe(l,c,["ng-version",Cs.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let r=1,s=2;for(;r0&&Wn(l,c,e.join(" "))}if(_=d.data[20],void 0!==e){const t=_.projection=[];for(let n=0;nt(i,e)),e.contentQueries){const t=me();e.contentQueries(1,i,t.directiveStart)}const l=me();return!o.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(Ne(l.index),yr(n[1],l,0,l.directiveStart,l.directiveEnd,e),mr(e,i)),i}(t,this.componentDef,f,h,[Jr]),cr(d,f,null)}finally{He()}return new Ws(this.componentType,p,ys(_,f),f,_)}}class Ws extends class{}{constructor(t,e,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Rs(r),this.componentType=t}get injector(){return new wn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const qs=new Map;class Qs extends Ls{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Zs(this);const n=Rt(t),r=t[Tt]||null;r&&hs(r),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Zr(t,e,[{provide:Ls,useValue:this},{provide:ps,useValue:this.componentFactoryResolver}],J(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Gr.THROW_IF_NOT_FOUND,n=Ft.Default){return t===Gr||t===Ls||t===Nr?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Gs extends class{}{constructor(t){super(),this.moduleType=t,null!==Rt(t)&&function(t){const e=new Set;!function t(n){const r=Rt(n,!0),s=r.id;null!==s&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${J(e)} vs ${J(e.name)}`)}(s,qs.get(s),n),qs.set(s,n));const o=In(r.imports);for(const i of o)e.has(i)||(e.add(i),t(i))}(t)}(t)}create(t){return new Qs(this.moduleType,t)}}const Js=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let r,s=t=>null,o=()=>null;t&&"object"==typeof t?(r=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(o=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(r=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return t instanceof h&&t.add(i),i}},Ks=new ut("Application Initializer");let Ys=(()=>{class t{constructor(t){this.appInits=t,this.resolve=_s,this.reject=_s,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Gt(Ks,8))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const Xs=new ut("AppId"),to={provide:Xs,useFactory:function(){return`${eo()}${eo()}${eo()}`},deps:[]};function eo(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const no=new ut("Platform Initializer"),ro=new ut("Platform ID"),so=new ut("appBootstrapListener");let oo=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const io=new ut("LocaleId"),lo=new ut("DefaultCurrencyCode");class uo{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const co=function(t){return new Gs(t)},ao=co,ho=function(t){return Promise.resolve(co(t))},fo=function(t){const e=co(t),n=In(Rt(t).declarations).reduce((t,e)=>{const n=Pt(e);return n&&t.push(new Us(n)),t},[]);return new uo(e,n)},po=fo,_o=function(t){return Promise.resolve(fo(t))};let yo=(()=>{class t{constructor(){this.compileModuleSync=ao,this.compileModuleAsync=ho,this.compileModuleAndAllComponentsSync=po,this.compileModuleAndAllComponentsAsync=_o}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const mo=(()=>Promise.resolve(0))();function go(t){"undefined"==typeof Zone?mo.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class vo{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Js(!1),this.onMicrotaskEmpty=new Js(!1),this.onStable=new Js(!1),this.onError=new Js(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=pt.requestAnimationFrame,e=pt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const r=e[Zone.__symbol__("OriginalDelegate")];r&&(e=r)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(pt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Eo(t),Co(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Eo(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,r,s,o,i,l)=>{try{return xo(t),n.invokeTask(s,o,i,l)}finally{e&&"eventTask"===o.type&&e(),ko(t)}},onInvoke:(e,n,r,s,o,i,l)=>{try{return xo(t),e.invoke(r,s,o,i,l)}finally{ko(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Eo(t),Co(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!vo.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(vo.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,t,wo,bo,bo);try{return s.runTask(o,e,n)}finally{s.cancelTask(o)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function bo(){}const wo={};function Co(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Eo(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function xo(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ko(t){t._nesting--,Co(t)}class To{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Js,this.onMicrotaskEmpty=new Js,this.onStable=new Js,this.onError=new Js}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,r){return t.apply(e,n)}}let So=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{vo.assertNotInAngularZone(),go(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())go(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let r=-1;e&&e>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==r),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Io=(()=>{class t{constructor(){this._applications=new Map,Do.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Do.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class Ao{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Oo,Do=new Ao;const jo=new ut("AllowMultipleToken");function Ho(t,e,n=[]){const r="Platform: "+e,s=new ut(r);return(e=[])=>{let o=No();if(!o||o.injector.get(jo,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Rr,useValue:"platform"});!function(t){if(Oo&&!Oo.destroyed&&!Oo.injector.get(jo,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Oo=t.get(Po);const e=t.get(no,null);e&&e.forEach(t=>t())}(Gr.create({providers:t,name:r}))}return function(t){const e=No();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}(s)}}function No(){return Oo&&!Oo.destroyed?Oo:null}let Po=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new To:("zone.js"===t?void 0:t)||new vo({enableLongStackTrace:Me(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:vo,useValue:n}];return n.run(()=>{const e=Gr.create({providers:r,parent:this.injector,name:t.moduleType.name}),s=t.create(e),o=s.injector.get(kn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Fo(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{o.handleError(t)}})),function(t,e,n){try{const r=n();return rs(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(r){throw e.runOutsideAngular(()=>t.handleError(r)),r}}(o,n,()=>{const t=s.injector.get(Ys);return t.runInitializers(),t.donePromise.then(()=>(hs(s.injector.get(io,cs)||cs),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Ro({},e);return function(t,e,n){const r=new Gs(n);return Promise.resolve(r)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Mo);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${J(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Gt(Gr))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Ro(t,e){return Array.isArray(e)?e.reduce(Ro,t):Object.assign(Object.assign({},t),e)}let Mo=(()=>{class t{constructor(t,e,n,r,s,o){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Me(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new g(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new g(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{vo.assertNotInAngularZone(),go(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{vo.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,r=t[t.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof r&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof g?t[0]:function(t=Number.POSITIVE_INFINITY){return H(m,t)}(e)(function(t,e){return e?function(t,e){return new g(n=>{const r=new h;let s=0;return r.add(e.schedule(function(){s!==t.length?(n.next(t[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}(t,e):new g(S(t))}(t,n))}(i,l.pipe(t=>{return R()((e=Z,function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,L);return r.source=t,r.subjectFactory=n,r})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ds?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Ls),s=n.create(Gr.NULL,[],e||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(So,null);return o&&s.injector.get(Io).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Me()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Fo(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(so,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Fo(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Gt(vo),Gt(oo),Gt(Gr),Gt(kn),Gt(ps),Gt(Ys))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();function Fo(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Vo=Ho(null,"core",[{provide:ro,useValue:"unknown"},{provide:Po,deps:[Gr]},{provide:Io,deps:[]},{provide:oo,deps:[]}]),Lo=[{provide:Mo,useClass:Mo,deps:[vo,oo,Gr,kn,ps,Ys]},{provide:$s,deps:[vo],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:Ys,useClass:Ys,deps:[[new q,Ks]]},{provide:yo,useClass:yo,deps:[]},to,{provide:Hs,useFactory:function(){return Fs},deps:[]},{provide:Ns,useFactory:function(){return Vs},deps:[]},{provide:io,useFactory:function(t){return hs(t=t||"undefined"!=typeof $localize&&$localize.locale||cs),t},deps:[[new W(io),new q,new G]]},{provide:lo,useValue:"USD"}];let Bo=(()=>{class t{constructor(t){}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(Mo))},providers:Lo}),t})(),Zo=null;function zo(){return Zo}const $o=new ut("DocumentToken");var Uo=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class Wo{}let qo=(()=>{class t extends Wo{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ls(e);if(n)return n;const r=e.split("-")[0];if(n=ls(r),n)return n;if("en"===r)return os;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[us.PluralCase]}(e||this.locale)(t)){case Uo.Zero:return"zero";case Uo.One:return"one";case Uo.Two:return"two";case Uo.Few:return"few";case Uo.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Gt(io))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),Qo=(()=>{class t{}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[{provide:Wo,useClass:qo}]}),t})();class Go extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Go,Zo||(Zo=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Ko||(Ko=document.querySelector("base"),Ko)?Ko.getAttribute("href"):null;return null==e?null:(n=e,Jo||(Jo=document.createElement("a")),Jo.setAttribute("href",n),"/"===Jo.pathname.charAt(0)?Jo.pathname:"/"+Jo.pathname);var n}resetBaseElement(){Ko=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[r,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(r.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Jo,Ko=null;const Yo=new ut("TRANSITION_ID"),Xo=[{provide:Ks,useFactory:function(t,e,n){return()=>{n.get(Ys).donePromise.then(()=>{const n=zo();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Yo,$o,Gr],multi:!0}];class ti{static init(){var t;t=new ti,Do=t}addToWindow(t){pt.getAngularTestability=(e,n=!0)=>{const r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},pt.getAllAngularTestabilities=()=>t.getAllTestabilities(),pt.getAllAngularRootElements=()=>t.getAllRootElements(),pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(t=>{const e=pt.getAllAngularTestabilities();let n=e.length,r=!1;const s=function(e){r=r||e,n--,0==n&&t(r)};e.forEach(function(t){t.whenStable(s)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const r=t.getTestability(e);return null!=r?r:n?zo().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const ei=new ut("EventManagerPlugins");let ni=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})(),oi=(()=>{class t extends si{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>zo().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const ii={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/"},li=/%COMP%/g;function ui(t,e,n){for(let r=0;r{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ai=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new hi(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case vt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new di(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case vt.ShadowDom:return new fi(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=ui(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Gt(ni),Gt(oi),Gt(Xs))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();class hi{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(ii[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,r){if(r){e=r+":"+e;const s=ii[r];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const r=ii[n];r?t.removeAttributeNS(r,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,r){r&(An.DashCase|An.Important)?t.style.setProperty(e,n,r&An.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&An.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ci(n)):this.eventManager.addEventListener(t,e,ci(n))}}class di extends hi{constructor(t,e,n,r){super(t),this.component=n;const s=ui(r+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(li,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(li,r+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class fi extends hi{constructor(t,e,n,r){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const s=ui(r.id,r.styles,[]);for(let o=0;o{class t extends ri{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const _i=["alt","control","meta","shift"],yi={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},mi={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},gi={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let vi=(()=>{class t extends ri{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,r){const s=t.parseEventName(n),o=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>zo().onAndCancel(e,s.domEventName,o))}static parseEventName(e){const n=e.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=t._normalizeKey(n.pop());let o="";if(_i.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),o+=t+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&mi.hasOwnProperty(e)&&(e=mi[e]))}return yi[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),_i.forEach(r=>{r!=n&&(0,gi[r])(t)&&(e+=r+".")}),e+=n,e}static eventCallback(e,n,r){return s=>{t.getEventFullKey(s)===e&&r.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Gt($o))},t.\u0275prov=X({token:t,factory:t.\u0275fac}),t})();const bi=Ho(Vo,"browser",[{provide:ro,useValue:"browser"},{provide:no,useValue:function(){Go.makeCurrent(),ti.init()},multi:!0},{provide:$o,useFactory:function(){return function(t){Kt=t}(document),document},deps:[]}]),wi=[[],{provide:Rr,useValue:"root"},{provide:kn,useFactory:function(){return new kn},deps:[]},{provide:ei,useClass:pi,multi:!0,deps:[$o,vo,ro]},{provide:ei,useClass:vi,multi:!0,deps:[$o]},[],{provide:ai,useClass:ai,deps:[ni,oi,Xs]},{provide:vs,useExisting:ai},{provide:si,useExisting:oi},{provide:oi,useClass:oi,deps:[$o]},{provide:So,useClass:So,deps:[vo]},{provide:ni,useClass:ni,deps:[ei,vo]},[]];let Ci=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.appId},{provide:Yo,useExisting:Xs},Xo]}}}return t.\u0275mod=Ht({type:t}),t.\u0275inj=tt({factory:function(e){return new(e||t)(Gt(t,12))},providers:wi,imports:[Qo,Bo]}),t})();"undefined"!=typeof window&&window;let Ei=(()=>{class t{constructor(){this.title="example"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=(e={type:t,selectors:[["app-root"]],decls:2,vars:0,consts:[[1,"bg-primary","text-center","text-white","p-2"]],template:function(t,e){1&t&&(ns(0,"div",0),function(t,e=""){const n=_e(),r=ye(),s=t+Yt,o=r.firstCreatePass?lr(r,s,1,e,null):r.data[s],i=n[s]=function(t,e){return re(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Bn(r,n,i,o),ve(o,!1)}(1," Hello, World\n"),function(){let t=me();be()?fe.lFrame.isParent=!1:(t=t.parent,ve(t,!1));const e=t;fe.lFrame.elementDepthCount--;const n=ye();n.firstCreatePass&&(Ue(n,t),ee(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&function(t){return 0!=(16&t.flags)}(e)&&es(n,e,_e(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&function(t){return 0!=(32&t.flags)}(e)&&es(n,e,_e(),e.stylesWithoutHost,!1)}())},styles:[""]},z(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||wt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||vt.Emulated,id:"c",styles:e.styles||wt,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=At++,n.inputs=Nt(e.inputs,t),n.outputs=Nt(e.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(Ot):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(Dt):null,n})),t;var e})(),xi=(()=>{class t{}return t.\u0275mod=Ht({type:t,bootstrap:[Ei]}),t.\u0275inj=tt({factory:function(e){return new(e||t)},providers:[],imports:[[Ci]]}),t})();(function(){if(Re)throw new Error("Cannot enable prod mode after platform setup.");Pe=!1})(),bi().bootstrapModule(xi).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); ================================================ FILE: Update for Angular 11/Chapter 21/example/dist/example/polyfills.bf99d438b005d57b2b31.js ================================================ (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); ================================================ FILE: Update for Angular 11/Chapter 21/example/dist/example/runtime.359d5ee4682f20e936e9.js ================================================ !function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];ccode{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} ================================================ FILE: Update for Angular 11/Chapter 21/example/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 21/example/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('example app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 21/example/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 21/example/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 21/example/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/example'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 21/example/package.json ================================================ { "name": "example", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ProductComponent } from "./component"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { ProductTableComponent } from "./components/productTable.component"; import { ProductFormComponent } from "./components/productForm.component"; // import { PaDiscountDisplayComponent } from "./discountDisplay.component"; // import { PaDiscountEditorComponent } from "./discountEditor.component"; import { ModelModule } from "./model/model.module"; import { CommonModule } from "./common/common.module"; import { ComponentsModule } from "./components/components.module"; @NgModule({ imports: [BrowserModule, FormsModule, ReactiveFormsModule, ModelModule, CommonModule, ComponentsModule], declarations: [ProductComponent], bootstrap: [ProductFormComponent, ProductTableComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/addTax.pipe.ts ================================================ import { Pipe } from "@angular/core"; @Pipe({ name: "addTax" }) export class PaAddTaxPipe { defaultRate: number = 10; transform(value: any, rate?: any): number { let valueNumber = Number.parseFloat(value); let rateNumber = rate == undefined ? this.defaultRate : Number.parseInt(rate); return valueNumber + (valueNumber * (rateNumber / 100)); } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/attr.directive.ts ================================================ import { Directive, ElementRef, Attribute, Input, SimpleChange, Output, EventEmitter, HostListener, HostBinding } from "@angular/core"; import { Product } from "../model/product.model"; @Directive({ selector: "[pa-attr]" }) export class PaAttrDirective { @Input("pa-attr") @HostBinding("class") bgClass: string; @Input("pa-product") product: Product; @Output("pa-category") click = new EventEmitter(); @HostListener("click") triggerCustomEvent() { if (this.product != null) { this.click.emit(this.product.category); } } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/categoryFilter.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { Product } from "../model/product.model"; @Pipe({ name: "filter", pure: false }) export class PaCategoryFilterPipe { transform(products: Product[], category: string): Product[] { return category == undefined ? products : products.filter(p => p.category == category); } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/cellColor.directive.ts ================================================ import { Directive, HostBinding } from "@angular/core"; @Directive({ selector: "td[paApplyColor]" }) export class PaCellColor { @HostBinding("class") bgClass: string = ""; setColor(dark: Boolean) { this.bgClass = dark ? "bg-dark" : ""; } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/cellColorSwitcher.directive.ts ================================================ import { Directive, Input, Output, EventEmitter, SimpleChange, ContentChildren, QueryList } from "@angular/core"; import { PaCellColor } from "./cellColor.directive"; @Directive({ selector: "table" }) export class PaCellColorSwitcher { @Input("paCellDarkColor") modelProperty: Boolean; @ContentChildren(PaCellColor, {descendants: true}) contentChildren: QueryList; ngOnChanges(changes: { [property: string]: SimpleChange }) { this.updateContentChildren(changes["modelProperty"].currentValue); } ngAfterContentInit() { this.contentChildren.changes.subscribe(() => { setTimeout(() => this.updateContentChildren(this.modelProperty), 0); }); } private updateContentChildren(dark: Boolean) { if (this.contentChildren != null && dark != undefined) { this.contentChildren.forEach((child, index) => { child.setColor(index % 2 ? dark : !dark); }); } } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/common.module.ts ================================================ import { NgModule } from "@angular/core"; import { PaAddTaxPipe } from "./addTax.pipe"; import { PaAttrDirective } from "./attr.directive"; import { PaCategoryFilterPipe } from "./categoryFilter.pipe"; import { PaCellColor } from "./cellColor.directive"; import { PaCellColorSwitcher } from "./cellColorSwitcher.directive"; import { PaDiscountPipe } from "./discount.pipe"; import { PaDiscountAmountDirective } from "./discountAmount.directive"; import { PaIteratorDirective } from "./iterator.directive"; import { PaStructureDirective } from "./structure.directive"; import { PaModel } from "./twoway.directive"; import { VALUE_SERVICE, PaDisplayValueDirective} from "./valueDisplay.directive"; import { DiscountService } from "./discount.service"; import { LogService } from "./log.service"; import { ModelModule } from "../model/model.module"; @NgModule({ imports: [ModelModule], providers: [LogService, DiscountService, { provide: VALUE_SERVICE, useValue: "Apples" }], declarations: [PaAddTaxPipe, PaAttrDirective, PaCategoryFilterPipe, PaCellColor, PaCellColorSwitcher, PaDiscountPipe, PaDiscountAmountDirective, PaIteratorDirective, PaStructureDirective, PaModel, PaDisplayValueDirective], exports: [PaAddTaxPipe, PaAttrDirective, PaCategoryFilterPipe, PaCellColor, PaCellColorSwitcher, PaDiscountPipe, PaDiscountAmountDirective, PaIteratorDirective, PaStructureDirective, PaModel, PaDisplayValueDirective] }) export class CommonModule { } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/discount.pipe.ts ================================================ import { Pipe, Injectable } from "@angular/core"; import { DiscountService } from "./discount.service"; import { LogService } from "./log.service"; @Pipe({ name: "discount", pure: false }) export class PaDiscountPipe { constructor(private discount: DiscountService, private logger: LogService) { } transform(price: number): number { if (price > 100) { this.logger.logInfoMessage(`Large price discounted: ${price}`); } return this.discount.applyDiscount(price); } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/discount.service.ts ================================================ import { Injectable, Inject } from "@angular/core"; import { LogService, LOG_SERVICE, LogLevel } from "./log.service"; @Injectable() export class DiscountService { private discountValue: number = 10; constructor(private logger: LogService) { } public get discount(): number { return this.discountValue; } public set discount(newValue: number) { this.discountValue = newValue || 0; } public applyDiscount(price: number) { this.logger.logInfoMessage(`Discount ${this.discount}` + ` applied to price: ${price}`); return Math.max(price - this.discountValue, 5); } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/discountAmount.directive.ts ================================================ import { Directive, HostBinding, Input, SimpleChange, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { DiscountService } from "./discount.service"; @Directive({ selector: "td[pa-price]", exportAs: "discount" }) export class PaDiscountAmountDirective { private differ: KeyValueDiffer; constructor(private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef, private discount: DiscountService) { } @Input("pa-price") originalPrice: number; discountAmount: number; ngOnInit() { this.differ = this.keyValueDiffers.find(this.discount).create(); } ngOnChanges(changes: { [property: string]: SimpleChange }) { if (changes["originalPrice"] != null) { this.updateValue(); } } ngDoCheck() { if (this.differ.diff(this.discount) != null) { this.updateValue(); } } private updateValue() { this.discountAmount = this.originalPrice - this.discount.applyDiscount(this.originalPrice); } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/iterator.directive.ts ================================================ import { Directive, ViewContainerRef, TemplateRef, Input, SimpleChange, IterableDiffer, IterableDiffers, ChangeDetectorRef, ViewRef, IterableChangeRecord } from "@angular/core"; @Directive({ selector: "[paForOf]" }) export class PaIteratorDirective { private differ: IterableDiffer; private views: Map = new Map(); constructor(private container: ViewContainerRef, private template: TemplateRef, private differs: IterableDiffers, private changeDetector: ChangeDetectorRef) { } @Input("paForOf") dataSource: any; ngOnInit() { this.differ = >this.differs.find(this.dataSource).create(); } ngDoCheck() { let changes = this.differ.diff(this.dataSource); if (changes != null) { let arr: IterableChangeRecord[] = []; changes.forEachAddedItem(addition => arr.push(addition)); arr.forEach(addition => { let context = new PaIteratorContext(addition.item, addition.currentIndex, arr.length); context.view = this.container.createEmbeddedView(this.template, context); this.views.set(addition.trackById, context); }); let removals = false; changes.forEachRemovedItem(removal => { removals = true; let context = this.views.get(removal.trackById); if (context != null) { this.container.remove(this.container.indexOf(context.view)); this.views.delete(removal.trackById); } }); if (removals) { let index = 0; this.views.forEach(context => context.setData(index++, this.views.size)); } } } } class PaIteratorContext { index: number; odd: boolean; even: boolean; first: boolean; last: boolean; view: ViewRef; constructor(public $implicit: any, public position: number, total: number ) { this.setData(position, total); } setData(index: number, total: number) { this.index = index; this.odd = index % 2 == 1; this.even = !this.odd; this.first = index == 0; this.last = index == total - 1; } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/log.service.ts ================================================ import { Injectable, InjectionToken } from "@angular/core"; export const LOG_SERVICE = new InjectionToken("logger"); export const LOG_LEVEL = new InjectionToken("log_level"); export enum LogLevel { DEBUG, INFO, ERROR } @Injectable() export class LogService { minimumLevel: LogLevel = LogLevel.INFO; logInfoMessage(message: string) { this.logMessage(LogLevel.INFO, message); } logDebugMessage(message: string) { this.logMessage(LogLevel.DEBUG, message); } logErrorMessage(message: string) { this.logMessage(LogLevel.ERROR, message); } logMessage(level: LogLevel, message: string) { if (level >= this.minimumLevel) { console.log(`Message (${LogLevel[level]}): ${message}`); } } } @Injectable() export class SpecialLogService extends LogService { constructor() { super() this.minimumLevel = LogLevel.DEBUG; } logMessage(level: LogLevel, message: string) { if (level >= this.minimumLevel) { console.log(`Special Message (${LogLevel[level]}): ${message}`); } } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/structure.directive.ts ================================================ import { Directive, SimpleChange, ViewContainerRef, TemplateRef, Input } from "@angular/core"; @Directive({ selector: "[paIf]" }) export class PaStructureDirective { constructor(private container: ViewContainerRef, private template: TemplateRef) { } @Input("paIf") expressionResult: boolean; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["expressionResult"]; if (!change.isFirstChange() && !change.currentValue) { this.container.clear(); } else if (change.currentValue) { this.container.createEmbeddedView(this.template); } } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/twoway.directive.ts ================================================ import { Input, Output, EventEmitter, Directive, HostBinding, HostListener, SimpleChange } from "@angular/core"; @Directive({ selector: "input[paModel]", exportAs: "paModel" }) export class PaModel { direction: string = "None"; @Input("paModel") modelProperty: string; @HostBinding("value") fieldValue: string = ""; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["modelProperty"]; if (change.currentValue != this.fieldValue) { this.fieldValue = changes["modelProperty"].currentValue || ""; this.direction = "Model"; } } @Output("paModelChange") update = new EventEmitter(); @HostListener("input", ["$event.target.value"]) updateValue(newValue: string) { this.fieldValue = newValue; this.update.emit(newValue); this.direction = "Element"; } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/common/valueDisplay.directive.ts ================================================ import { Directive, InjectionToken, Inject, HostBinding, Host, Optional} from "@angular/core"; export const VALUE_SERVICE = new InjectionToken("value_service"); @Directive({ selector: "[paDisplayValue]" }) export class PaDisplayValueDirective { constructor( @Inject(VALUE_SERVICE) @Host() @Optional() serviceValue: string) { this.elementContent = serviceValue || "No Value"; } @HostBinding("textContent") elementContent: string; } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/component.ts ================================================ import { Component } from "@angular/core"; //import { Model } from "./repository.model"; //import { Product } from "./product.model"; //import { ProductFormGroup } from "./form.model"; @Component({ selector: "app", templateUrl: "template.html" }) export class ProductComponent { //model: Model = new Model(); //constructor(public model: Model) { } //addProduct(p: Product) { // this.model.saveProduct(p); //} } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/app.component.html ================================================
Hello, World
================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/app.component.ts ================================================ import { Component } from '@angular/core'; //debugger; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'example'; } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/components.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { CommonModule } from "../common/common.module"; import { FormsModule, ReactiveFormsModule } from "@angular/forms" import { PaDiscountDisplayComponent } from "./discountDisplay.component"; import { PaDiscountEditorComponent } from "./discountEditor.component"; import { ProductFormComponent } from "./productForm.component"; import { ProductTableComponent } from "./productTable.component"; @NgModule({ imports: [BrowserModule, FormsModule, ReactiveFormsModule, CommonModule], declarations: [PaDiscountDisplayComponent, PaDiscountEditorComponent, ProductFormComponent, ProductTableComponent], exports: [ProductFormComponent, ProductTableComponent] }) export class ComponentsModule { } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/discountDisplay.component.ts ================================================ import { Component, Input } from "@angular/core"; import { DiscountService } from "../common/discount.service"; @Component({ selector: "paDiscountDisplay", template: `
The discount is {{discounter.discount}}
` }) export class PaDiscountDisplayComponent { constructor(public discounter: DiscountService) { } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/discountEditor.component.ts ================================================ import { Component, Input } from "@angular/core"; import { DiscountService } from "../common/discount.service"; @Component({ selector: "paDiscountEditor", template: `
` }) export class PaDiscountEditorComponent { constructor(public discounter: DiscountService) { } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/productForm.component.css ================================================ div { background-color: lightcoral; } :host:hover { font-size: 25px; } :host-context(.angularApp) input { background-color: lightgray; } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/productForm.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/productForm.component.ts ================================================ import { Component, Output, EventEmitter, ViewEncapsulation, Inject, SkipSelf } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { VALUE_SERVICE } from "../common/valueDisplay.directive"; @Component({ selector: "paProductForm", templateUrl: "productForm.component.html", viewProviders: [{ provide: VALUE_SERVICE, useValue: "Oranges" }] }) export class ProductFormComponent { newProduct: Product = new Product(); constructor(private model: Model, @Inject(VALUE_SERVICE) @SkipSelf() private serviceValue: string) { console.log("Service Value: " + serviceValue); } submitForm(form: any) { this.model.saveProduct(this.newProduct); this.newProduct = new Product(); form.reset(); } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/productTable.component.html ================================================
NameCategoryPrice
{{i + 1}} {{item.name}} {{item.category}} {{ discount.discountAmount | currency:"USD":"symbol"}}
================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/productTable.component.ts ================================================ import { Component, Input, ViewChildren, QueryList } from "@angular/core"; import { Model } from "../model/repository.model"; import { Product } from "../model/product.model"; import { DiscountService } from "../common/discount.service"; import { LogService } from "../common/log.service"; @Component({ selector: "paProductTable", templateUrl: "productTable.component.html", providers:[LogService] }) export class ProductTableComponent { constructor(private dataModel: Model) { } getProduct(key: number): Product { return this.dataModel.getProduct(key); } getProducts(): Product[] { return this.dataModel.getProducts(); } deleteProduct(key: number) { this.dataModel.deleteProduct(key); } taxRate: number = 0; dateObject: Date = new Date(2020, 1, 20); dateString: string = "2020-02-20T00:00:00.000Z"; dateNumber: number = 1582156800000; selectMap = { "Watersports": "stay dry", "Soccer": "score goals", "other": "have fun" } numberMap = { "=1": "one product", "=2": "two products", "other": "# products" } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/toggleView.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/components/toggleView.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "paToggleView", templateUrl: "toggleView.component.html" }) export class PaToggleView { showContent: boolean = true; } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/model/datasource.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class SimpleDataSource { private data:Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/model/form.model.ts ================================================ import { FormControl, FormGroup, Validators } from "@angular/forms"; import { LimitValidator } from "./limit.formvalidator"; export class ProductFormControl extends FormControl { label: string; modelProperty: string; constructor(label:string, property:string, value: any, validator: any) { super(value, validator); this.label = label; this.modelProperty = property; } getValidationMessages() { let messages: string[] = []; if (this.errors) { for (let errorName in this.errors) { switch (errorName) { case "required": messages.push(`You must enter a ${this.label}`); break; case "minlength": messages.push(`A ${this.label} must be at least ${this.errors['minlength'].requiredLength} characters`); break; case "maxlength": messages.push(`A ${this.label} must be no more than ${this.errors['maxlength'].requiredLength} characters`); break; case "pattern": messages.push(`The ${this.label} contains illegal characters`); break; case "limit": messages.push(`A ${this.label} cannot be more than ${this.errors['limit'].limit}`); break; } } } return messages; } } export class ProductFormGroup extends FormGroup { constructor() { super({ name: new ProductFormControl("Name", "name", "", Validators.required), category: new ProductFormControl("Category", "category", "", Validators.compose([Validators.required, Validators.pattern("^[A-Za-z ]+$"), Validators.minLength(3), Validators.maxLength(10)])), price: new ProductFormControl("Price", "price", "", Validators.compose([Validators.required, LimitValidator.Limit(100), Validators.pattern("^[0-9\.]+$")])) }); } get productControls(): ProductFormControl[] { return Object.keys(this.controls) .map(k => this.controls[k] as ProductFormControl); } getValidationMessages(name: string): string[] { return (this.controls['name'] as ProductFormControl).getValidationMessages(); } getFormValidationMessages() : string[] { let messages: string[] = []; Object.values(this.controls).forEach(c => messages.push(...(c as ProductFormControl).getValidationMessages())); return messages; } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/model/limit.formvalidator.ts ================================================ import { FormControl } from "@angular/forms"; export class LimitValidator { static Limit(limit:number) { return (control:FormControl) : {[key: string]: any} => { let val = Number(control.value); if (val != NaN && val > limit) { return {"limit": {"limit": limit, "actualValue": val}}; } else { return null; } } } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { SimpleDataSource } from "./datasource.model"; import { Model } from "./repository.model"; @NgModule({ providers: [Model, SimpleDataSource] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/model/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/model/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { SimpleDataSource } from "./datasource.model"; @Injectable() export class Model { //private dataSource: SimpleDataSource; private products: Product[]; private locator = (p:Product, id:number) => p.id == id; constructor(private dataSource: SimpleDataSource) { //this.dataSource = new SimpleDataSource(); this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } swapProduct() { let p = this.products.shift(); this.products.push(new Product(p.id, p.name, p.category, p.price)); } } ================================================ FILE: Update for Angular 11/Chapter 21/example/src/app/template.html ================================================
================================================ FILE: Update for Angular 11/Chapter 21/example/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 21/example/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 21/example/src/index.html ================================================ Example
================================================ FILE: Update for Angular 11/Chapter 21/example/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 21/example/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 21/example/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 21/example/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 21/example/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 21/example/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 21/example/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 21/example/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "exampleApp": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/exampleApp", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "exampleApp:build" }, "configurations": { "production": { "browserTarget": "exampleApp:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "exampleApp:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "exampleApp:serve" }, "configurations": { "production": { "devServerTarget": "exampleApp:serve:production" } } } } } }, "defaultProject": "exampleApp" } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('exampleApp app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/exampleApp'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/package.json ================================================ { "name": "example-app", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'exampleApp'; } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; //import { AppComponent } from './app.component'; import { ModelModule } from "./model/model.module"; import { CoreModule } from "./core/core.module"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { MessageModule } from "./messages/message.module"; import { MessageComponent } from "./messages/message.component"; @NgModule({ imports: [BrowserModule, ModelModule, CoreModule, MessageModule], bootstrap: [TableComponent, FormComponent, MessageComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/core/core.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { TableComponent } from "./table.component"; import { FormComponent } from "./form.component"; import { SharedState } from "./sharedState.model"; @NgModule({ imports: [BrowserModule, FormsModule, ModelModule], declarations: [TableComponent, FormComponent], exports: [ModelModule, TableComponent, FormComponent], providers: [SharedState] }) export class CoreModule { } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/core/form.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/core/form.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/core/form.component.ts ================================================ import { Component } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model" import { MODES, SharedState } from "./sharedState.model"; @Component({ selector: "paForm", templateUrl: "form.component.html", styleUrls: ["form.component.css"] }) export class FormComponent { product: Product = new Product(); constructor(private model: Model, private state: SharedState) { } get editing(): boolean { return this.state.mode == MODES.EDIT; } submitForm(form: NgForm) { if (form.valid) { this.model.saveProduct(this.product); this.product = new Product(); form.reset(); } } resetForm() { this.product = new Product(); } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/core/sharedState.model.ts ================================================ export enum MODES { CREATE, EDIT } export class SharedState { mode: MODES = MODES.EDIT; id: number; } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/core/table.component.html ================================================
IDNameCategoryPrice
{{item.id}} {{item.name}} {{item.category}} {{item.price | currency:"USD" }}
================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/core/table.component.ts ================================================ import { Component } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { MODES, SharedState } from "./sharedState.model"; @Component({ selector: "paTable", templateUrl: "table.component.html" }) export class TableComponent { constructor(private model: Model, private state: SharedState) { } getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts(); } deleteProduct(key: number) { this.model.deleteProduct(key); } editProduct(key: number) { this.state.id = key; this.state.mode = MODES.EDIT; } createProduct() { this.state.id = undefined; this.state.mode = MODES.CREATE; } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/messages/message.component.html ================================================

{{lastMessage.text}}

================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/messages/message.component.ts ================================================ import { Component } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; @Component({ selector: "paMessages", templateUrl: "message.component.html", }) export class MessageComponent { lastMessage: Message; constructor(messageService: MessageService) { messageService.registerMessageHandler(m => this.lastMessage = m); } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/messages/message.model.ts ================================================ export class Message { constructor(public text: string, public error: boolean = false) { } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/messages/message.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { MessageComponent } from "./message.component"; import { MessageService } from "./message.service"; @NgModule({ imports: [BrowserModule], declarations: [MessageComponent], exports: [MessageComponent], providers: [MessageService] }) export class MessageModule { } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/messages/message.service.ts ================================================ import { Injectable } from "@angular/core"; import { Message } from "./message.model"; @Injectable() export class MessageService { private handler: (m: Message) => void; reportMessage(msg: Message) { if (this.handler != null) { this.handler(msg); } } registerMessageHandler(handler: (m: Message) => void) { this.handler = handler; } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { StaticDataSource } from "./static.datasource"; import { Model } from "./repository.model"; @NgModule({ providers: [Model, StaticDataSource] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/model/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) {} } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/model/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { StaticDataSource } from "./static.datasource"; @Injectable() export class Model { private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor(private dataSource: StaticDataSource) { this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class StaticDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/index.html ================================================ ExampleApp
================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 22/exampleApp/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "exampleApp": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/exampleApp", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "exampleApp:build" }, "configurations": { "production": { "browserTarget": "exampleApp:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "exampleApp:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "exampleApp:serve" }, "configurations": { "production": { "devServerTarget": "exampleApp:serve:production" } } } } } }, "defaultProject": "exampleApp" } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('exampleApp app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/exampleApp'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/package.json ================================================ { "name": "example-app", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'exampleApp'; } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; //import { AppComponent } from './app.component'; import { ModelModule } from "./model/model.module"; import { CoreModule } from "./core/core.module"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { MessageModule } from "./messages/message.module"; import { MessageComponent } from "./messages/message.component"; @NgModule({ imports: [BrowserModule, ModelModule, CoreModule, MessageModule], bootstrap: [TableComponent, FormComponent, MessageComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/core/core.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { TableComponent } from "./table.component"; import { FormComponent } from "./form.component"; import { SharedState, SHARED_STATE } from "./sharedState.model"; import { Subject } from "rxjs"; import { StatePipe } from "./state.pipe"; import { MessageModule } from "../messages/message.module"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { Model } from "../model/repository.model"; import { MODES } from "./sharedState.model"; @NgModule({ imports: [BrowserModule, FormsModule, ModelModule, MessageModule], declarations: [TableComponent, FormComponent, StatePipe], exports: [ModelModule, TableComponent, FormComponent], providers: [{ provide: SHARED_STATE, deps: [MessageService, Model], useFactory: (messageService, model) => { let subject = new Subject(); subject.subscribe(m => messageService.reportMessage( new Message(MODES[m.mode] + (m.id != undefined ? ` ${model.getProduct(m.id).name}` : ""))) ); return subject; } }] }) export class CoreModule { } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/core/form.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/core/form.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
Last Event: {{ stateEvents | async | formatState }}
================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/core/form.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { MODES, SharedState, SHARED_STATE } from "./sharedState.model"; import { Observable } from "rxjs"; import { filter, map, distinctUntilChanged, skipWhile } from "rxjs/operators"; @Component({ selector: "paForm", templateUrl: "form.component.html", styleUrls: ["form.component.css"] }) export class FormComponent { product: Product = new Product(); constructor(private model: Model, @Inject(SHARED_STATE) public stateEvents: Observable) { stateEvents .pipe(skipWhile(state => state.mode == MODES.EDIT)) .pipe(distinctUntilChanged((firstState, secondState) => firstState.mode == secondState.mode && firstState.id == secondState.id)) .subscribe(update => { this.product = new Product(); if (update.id != undefined) { Object.assign(this.product, this.model.getProduct(update.id)); } this.editing = update.mode == MODES.EDIT; }); } editing: boolean = false; submitForm(form: NgForm) { if (form.valid) { this.model.saveProduct(this.product); this.product = new Product(); form.reset(); } } resetForm() { this.product = new Product(); } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/core/sharedState.model.ts ================================================ import { InjectionToken } from "@angular/core"; export enum MODES { CREATE, EDIT } export const SHARED_STATE = new InjectionToken("shared_state"); export class SharedState { constructor(public mode: MODES, public id?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/core/state.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { SharedState, MODES } from "./sharedState.model"; import { Model } from "../model/repository.model"; @Pipe({ name: "formatState", pure: true }) export class StatePipe { constructor(private model: Model) { } transform(value: any): string { if (value instanceof SharedState) { let state = value as SharedState; return MODES[state.mode] + (state.id != undefined ? ` ${this.model.getProduct(state.id).name}` : ""); } else { return "" } } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/core/table.component.html ================================================
IDNameCategoryPrice
{{item.id}} {{item.name}} {{item.category}} {{item.price | currency:"USD" }}
================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/core/table.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { MODES, SharedState, SHARED_STATE } from "./sharedState.model"; import { Observer } from "rxjs"; @Component({ selector: "paTable", templateUrl: "table.component.html" }) export class TableComponent { constructor(private model: Model, @Inject(SHARED_STATE) public observer: Observer) { } getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts(); } deleteProduct(key: number) { this.model.deleteProduct(key); } editProduct(key: number) { this.observer.next(new SharedState(MODES.EDIT, key)); } createProduct() { this.observer.next(new SharedState(MODES.CREATE)); } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/messages/message.component.html ================================================

{{lastMessage.text}}

================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/messages/message.component.ts ================================================ import { Component } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; import { Observable } from "rxjs"; @Component({ selector: "paMessages", templateUrl: "message.component.html", }) export class MessageComponent { lastMessage: Message; constructor(messageService: MessageService) { messageService.messages.subscribe(m => this.lastMessage = m); } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/messages/message.model.ts ================================================ export class Message { constructor(public text: string, public error: boolean = false) { } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/messages/message.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { MessageComponent } from "./message.component"; import { MessageService } from "./message.service"; @NgModule({ imports: [BrowserModule], declarations: [MessageComponent], exports: [MessageComponent], providers: [MessageService] }) export class MessageModule { } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/messages/message.service.ts ================================================ import { Injectable } from "@angular/core"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Subject } from "rxjs"; @Injectable() export class MessageService { private subject = new Subject(); reportMessage(msg: Message) { this.subject.next(msg); } get messages(): Observable { return this.subject; } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { StaticDataSource } from "./static.datasource"; import { Model } from "./repository.model"; @NgModule({ providers: [Model, StaticDataSource] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/model/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) {} } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/model/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { StaticDataSource } from "./static.datasource"; @Injectable() export class Model { private products: Product[]; private locator = (p: Product, id: number) => p.id == id; constructor(private dataSource: StaticDataSource) { this.products = new Array(); this.dataSource.getData().forEach(p => this.products.push(p)); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { product.id = this.generateID(); this.products.push(product); } else { let index = this.products .findIndex(p => this.locator(p, product.id)); this.products.splice(index, 1, product); } } deleteProduct(id: number) { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } } private generateID(): number { let candidate = 100; while (this.getProduct(candidate) != null) { candidate++; } return candidate; } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class StaticDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/index.html ================================================ ExampleApp
================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 23/exampleApp/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "exampleApp": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/exampleApp", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "exampleApp:build" }, "configurations": { "production": { "browserTarget": "exampleApp:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "exampleApp:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "exampleApp:serve" }, "configurations": { "production": { "devServerTarget": "exampleApp:serve:production" } } } } } }, "defaultProject": "exampleApp" } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('exampleApp app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/exampleApp'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/package.json ================================================ { "name": "example-app", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server --p 3500 restData.js" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "json-server": "^0.16.0", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/restData.js ================================================ module.exports = function () { var data = { products: [ { id: 1, name: "Kayak", category: "Watersports", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", price: 1200 } ] } return data } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/app.component.html ================================================
{{ title }} app is running!

Resources

Here are some links to help you get started:

Next Steps

What do you want to do next with your app?

New Component
Angular Material
Add PWA Support
Add Dependency
Run and Watch Tests
Build for Production
ng generate component xyz
ng add @angular/material
ng add @angular/pwa
ng add _____
ng test
ng build --prod
================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/app.component.ts ================================================ import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'exampleApp'; } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; //import { AppComponent } from './app.component'; import { ModelModule } from "./model/model.module"; import { CoreModule } from "./core/core.module"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { MessageModule } from "./messages/message.module"; import { MessageComponent } from "./messages/message.component"; @NgModule({ imports: [BrowserModule, ModelModule, CoreModule, MessageModule], bootstrap: [TableComponent, FormComponent, MessageComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/core/core.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { TableComponent } from "./table.component"; import { FormComponent } from "./form.component"; import { SharedState, SHARED_STATE } from "./sharedState.model"; import { Subject } from "rxjs"; import { StatePipe } from "./state.pipe"; import { MessageModule } from "../messages/message.module"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { Model } from "../model/repository.model"; import { MODES } from "./sharedState.model"; @NgModule({ imports: [BrowserModule, FormsModule, ModelModule, MessageModule], declarations: [TableComponent, FormComponent, StatePipe], exports: [ModelModule, TableComponent, FormComponent], providers: [{ provide: SHARED_STATE, deps: [MessageService, Model], useFactory: (messageService, model) => { let subject = new Subject(); subject.subscribe(m => messageService.reportMessage( new Message(MODES[m.mode] + (m.id != undefined ? ` ${model.getProduct(m.id).name}` : ""))) ); return subject; } }] }) export class CoreModule { } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/core/form.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/core/form.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
Last Event: {{ stateEvents | async | formatState }}
================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/core/form.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { MODES, SharedState, SHARED_STATE } from "./sharedState.model"; import { Observable } from "rxjs"; import { filter, map, distinctUntilChanged, skipWhile } from "rxjs/operators"; @Component({ selector: "paForm", templateUrl: "form.component.html", styleUrls: ["form.component.css"] }) export class FormComponent { product: Product = new Product(); constructor(private model: Model, @Inject(SHARED_STATE) public stateEvents: Observable) { stateEvents // .pipe(skipWhile(state => state.mode == MODES.EDIT)) // .pipe(distinctUntilChanged((firstState, secondState) => // firstState.mode == secondState.mode // && firstState.id == secondState.id)) .subscribe(update => { this.product = new Product(); if (update.id != undefined) { Object.assign(this.product, this.model.getProduct(update.id)); } this.editing = update.mode == MODES.EDIT; }); } editing: boolean = false; submitForm(form: NgForm) { if (form.valid) { this.model.saveProduct(this.product); this.product = new Product(); form.reset(); } } resetForm() { this.product = new Product(); } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/core/sharedState.model.ts ================================================ import { InjectionToken } from "@angular/core"; export enum MODES { CREATE, EDIT } export const SHARED_STATE = new InjectionToken("shared_state"); export class SharedState { constructor(public mode: MODES, public id?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/core/state.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { SharedState, MODES } from "./sharedState.model"; import { Model } from "../model/repository.model"; @Pipe({ name: "formatState", pure: true }) export class StatePipe { constructor(private model: Model) { } transform(value: any): string { if (value instanceof SharedState) { let state = value as SharedState; return MODES[state.mode] + (state.id != undefined ? ` ${this.model.getProduct(state.id).name}` : ""); } else { return "" } } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/core/table.component.html ================================================
IDNameCategoryPrice
{{item.id}} {{item.name}} {{item.category}} {{item.price | currency:"USD" }}
================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/core/table.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { MODES, SharedState, SHARED_STATE } from "./sharedState.model"; import { Observer } from "rxjs"; @Component({ selector: "paTable", templateUrl: "table.component.html" }) export class TableComponent { constructor(private model: Model, @Inject(SHARED_STATE) public observer: Observer) { } getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts(); } deleteProduct(key: number) { this.model.deleteProduct(key); } editProduct(key: number) { this.observer.next(new SharedState(MODES.EDIT, key)); } createProduct() { this.observer.next(new SharedState(MODES.CREATE)); } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/messages/errorHandler.ts ================================================ import { ErrorHandler, Injectable, NgZone } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; @Injectable() export class MessageErrorHandler implements ErrorHandler { constructor(private messageService: MessageService, private ngZone: NgZone) { } handleError(error) { let msg = error instanceof Error ? error.message : error.toString(); this.ngZone.run(() => this.messageService .reportMessage(new Message(msg, true)), 0); } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/messages/message.component.html ================================================

{{lastMessage.text}}

================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/messages/message.component.ts ================================================ import { Component } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; import { Observable } from "rxjs"; @Component({ selector: "paMessages", templateUrl: "message.component.html", }) export class MessageComponent { lastMessage: Message; constructor(messageService: MessageService) { messageService.messages.subscribe(m => this.lastMessage = m); } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/messages/message.model.ts ================================================ export class Message { constructor(public text: string, public error: boolean = false) { } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/messages/message.module.ts ================================================ import { NgModule, ErrorHandler } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { MessageComponent } from "./message.component"; import { MessageService } from "./message.service"; import { MessageErrorHandler } from "./errorHandler"; @NgModule({ imports: [BrowserModule], declarations: [MessageComponent], exports: [MessageComponent], providers: [MessageService, { provide: ErrorHandler, useClass: MessageErrorHandler }] }) export class MessageModule { } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/messages/message.service.ts ================================================ import { Injectable } from "@angular/core"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Subject } from "rxjs"; @Injectable() export class MessageService { private subject = new Subject(); reportMessage(msg: Message) { this.subject.next(msg); } get messages(): Observable { return this.subject; } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; //import { StaticDataSource } from "./static.datasource"; import { Model } from "./repository.model"; import { HttpClientModule, HttpClientJsonpModule } from "@angular/common/http"; import { RestDataSource, REST_URL } from "./rest.datasource"; @NgModule({ imports: [HttpClientModule, HttpClientJsonpModule], providers: [Model, RestDataSource, { provide: REST_URL, useValue: `http://${location.hostname}:3500/products` }] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/model/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) {} } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/model/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class Model { private products: Product[] = new Array(); private locator = (p: Product, id: number) => p.id == id; constructor(private dataSource: RestDataSource) { this.dataSource.getData().subscribe(data => this.products = data); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product).subscribe(p => { let index = this.products .findIndex(item => this.locator(item, p.id)); this.products.splice(index, 1, p); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(() => { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } }); } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/model/rest.datasource.ts ================================================ import { Injectable, Inject, InjectionToken } from "@angular/core"; import { HttpClient, HttpHeaders } from "@angular/common/http"; import { Observable, throwError } from "rxjs"; import { Product } from "./product.model"; import { catchError } from "rxjs/operators"; export const REST_URL = new InjectionToken("rest_url"); @Injectable() export class RestDataSource { constructor(private http: HttpClient, @Inject(REST_URL) private url: string) { } getData(): Observable { return this.sendRequest("GET", this.url); } saveProduct(product: Product): Observable { return this.sendRequest("POST", this.url, product); } updateProduct(product: Product): Observable { return this.sendRequest("PUT", `${this.url}/${product.id}`, product); } deleteProduct(id: number): Observable { return this.sendRequest("DELETE", `${this.url}/${id}`); } private sendRequest(verb: string, url: string, body?: Product) : Observable { let myHeaders = new HttpHeaders(); myHeaders = myHeaders.set("Access-Key", ""); myHeaders = myHeaders.set("Application-Names", ["exampleApp", "proAngular"]); return this.http.request(verb, url, { body: body, headers: myHeaders }).pipe(catchError((error: Response) => throwError(`Network Error: ${error.statusText} (${error.status})`))); } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class StaticDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/index.html ================================================ ExampleApp
================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 24/exampleApp/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "exampleApp": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/exampleApp", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "exampleApp:build" }, "configurations": { "production": { "browserTarget": "exampleApp:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "exampleApp:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "exampleApp:serve" }, "configurations": { "production": { "devServerTarget": "exampleApp:serve:production" } } } } } }, "defaultProject": "exampleApp" } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('exampleApp app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/exampleApp'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/package.json ================================================ { "name": "example-app", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server --p 3500 restData.js" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "json-server": "^0.16.0", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/restData.js ================================================ module.exports = function () { var data = { products: [ { id: 1, name: "Kayak", category: "Watersports", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", price: 1200 } ] } return data } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/app.component.html ================================================ ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", templateUrl: "./app.component.html" }) export class AppComponent { } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { ModelModule } from "./model/model.module"; import { CoreModule } from "./core/core.module"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { MessageModule } from "./messages/message.module"; import { MessageComponent } from "./messages/message.component"; import { AppComponent } from './app.component'; import { routing } from "./app.routing"; @NgModule({ imports: [BrowserModule, ModelModule, CoreModule, MessageModule, routing], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/app.routing.ts ================================================ import { Routes, RouterModule } from "@angular/router"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; const routes: Routes = [ { path: "form/:mode/:id", component: FormComponent }, { path: "form/:mode", component: FormComponent }, { path: "", component: TableComponent }] export const routing = RouterModule.forRoot(routes); ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/core/core.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { TableComponent } from "./table.component"; import { FormComponent } from "./form.component"; //import { SharedState, SHARED_STATE } from "./sharedState.model"; import { Subject } from "rxjs"; import { StatePipe } from "./state.pipe"; import { MessageModule } from "../messages/message.module"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { Model } from "../model/repository.model"; //import { MODES } from "./sharedState.model"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [BrowserModule, FormsModule, ModelModule, MessageModule, RouterModule], declarations: [TableComponent, FormComponent, StatePipe], exports: [ModelModule, TableComponent, FormComponent], //providers: [{ // provide: SHARED_STATE, // deps: [MessageService, Model], // useFactory: (messageService, model) => { // return new Subject(); // } //}] }) export class CoreModule { } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/core/form.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/core/form.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/core/form.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { ActivatedRoute, Router } from "@angular/router"; @Component({ selector: "paForm", templateUrl: "form.component.html", styleUrls: ["form.component.css"] }) export class FormComponent { product: Product = new Product(); constructor(private model: Model, activeRoute: ActivatedRoute, private router: Router) { this.editing = activeRoute.snapshot.params["mode"] == "edit"; let id = activeRoute.snapshot.params["id"]; if (id != null) { let name = activeRoute.snapshot.params["name"]; let category = activeRoute.snapshot.params["category"]; let price = activeRoute.snapshot.params["price"]; if (name != null && category != null && price != null) { this.product.id = id; this.product.name = name; this.product.category = category; this.product.price = Number.parseFloat(price); } else { Object.assign(this.product, model.getProduct(id) || new Product()); } } } editing: boolean = false; submitForm(form: NgForm) { if (form.valid) { this.model.saveProduct(this.product); //this.product = new Product(); //form.reset(); this.router.navigateByUrl("/"); } } resetForm() { this.product = new Product(); } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/core/sharedState.model.ts ================================================ import { InjectionToken } from "@angular/core"; export enum MODES { CREATE, EDIT } export const SHARED_STATE = new InjectionToken("shared_state"); export class SharedState { constructor(public mode: MODES, public id?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/core/state.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { SharedState, MODES } from "./sharedState.model"; import { Model } from "../model/repository.model"; @Pipe({ name: "formatState", pure: true }) export class StatePipe { constructor(private model: Model) { } transform(value: any): string { if (value instanceof SharedState) { let state = value as SharedState; return MODES[state.mode] + (state.id != undefined ? ` ${this.model.getProduct(state.id).name}` : ""); } else { return "" } } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/core/table.component.html ================================================
IDNameCategoryPrice
{{item.id}} {{item.name}} {{item.category}} {{item.price | currency:"USD" }}
================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/core/table.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; //import { MODES, SharedState, SHARED_STATE } from "./sharedState.model"; //import { Observer } from "rxjs"; @Component({ selector: "paTable", templateUrl: "table.component.html" }) export class TableComponent { constructor(private model: Model, /*@Inject(SHARED_STATE) private observer: Observer*/) { } getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts(); } deleteProduct(key: number) { this.model.deleteProduct(key); } //editProduct(key: number) { // this.observer.next(new SharedState(MODES.EDIT, key)); //} //createProduct() { // this.observer.next(new SharedState(MODES.CREATE)); //} } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/messages/errorHandler.ts ================================================ import { ErrorHandler, Injectable, NgZone } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; @Injectable() export class MessageErrorHandler implements ErrorHandler { constructor(private messageService: MessageService, private ngZone: NgZone) { } handleError(error) { let msg = error instanceof Error ? error.message : error.toString(); this.ngZone.run(() => this.messageService .reportMessage(new Message(msg, true)), 0); } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/messages/message.component.html ================================================

{{lastMessage.text}}

================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/messages/message.component.ts ================================================ import { Component } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Router, NavigationEnd, NavigationCancel } from "@angular/router"; import { filter } from "rxjs/operators"; @Component({ selector: "paMessages", templateUrl: "message.component.html", }) export class MessageComponent { lastMessage: Message; constructor(messageService: MessageService, router: Router) { messageService.messages.subscribe(m => this.lastMessage = m); router.events .pipe(filter(e => e instanceof NavigationEnd || e instanceof NavigationCancel)) .subscribe(e => { this.lastMessage = null; }); } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/messages/message.model.ts ================================================ export class Message { constructor(public text: string, public error: boolean = false) { } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/messages/message.module.ts ================================================ import { NgModule, ErrorHandler } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { MessageComponent } from "./message.component"; import { MessageService } from "./message.service"; import { MessageErrorHandler } from "./errorHandler"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [BrowserModule, RouterModule], declarations: [MessageComponent], exports: [MessageComponent], providers: [MessageService, { provide: ErrorHandler, useClass: MessageErrorHandler }] }) export class MessageModule { } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/messages/message.service.ts ================================================ import { Injectable } from "@angular/core"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Subject } from "rxjs"; @Injectable() export class MessageService { private subject = new Subject(); reportMessage(msg: Message) { this.subject.next(msg); } get messages(): Observable { return this.subject; } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; //import { StaticDataSource } from "./static.datasource"; import { Model } from "./repository.model"; import { HttpClientModule, HttpClientJsonpModule } from "@angular/common/http"; import { RestDataSource, REST_URL } from "./rest.datasource"; @NgModule({ imports: [HttpClientModule, HttpClientJsonpModule], providers: [Model, RestDataSource, { provide: REST_URL, useValue: `http://${location.hostname}:3500/products` }] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/model/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) {} } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/model/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class Model { private products: Product[] = new Array(); private locator = (p: Product, id: number) => p.id == id; constructor(private dataSource: RestDataSource) { this.dataSource.getData().subscribe(data => this.products = data); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product).subscribe(p => { let index = this.products .findIndex(item => this.locator(item, p.id)); this.products.splice(index, 1, p); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(() => { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } }); } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/model/rest.datasource.ts ================================================ import { Injectable, Inject, InjectionToken } from "@angular/core"; import { HttpClient, HttpHeaders } from "@angular/common/http"; import { Observable, throwError } from "rxjs"; import { Product } from "./product.model"; import { catchError } from "rxjs/operators"; export const REST_URL = new InjectionToken("rest_url"); @Injectable() export class RestDataSource { constructor(private http: HttpClient, @Inject(REST_URL) private url: string) { } getData(): Observable { return this.sendRequest("GET", this.url); } saveProduct(product: Product): Observable { return this.sendRequest("POST", this.url, product); } updateProduct(product: Product): Observable { return this.sendRequest("PUT", `${this.url}/${product.id}`, product); } deleteProduct(id: number): Observable { return this.sendRequest("DELETE", `${this.url}/${id}`); } private sendRequest(verb: string, url: string, body?: Product) : Observable { let myHeaders = new HttpHeaders(); myHeaders = myHeaders.set("Access-Key", ""); myHeaders = myHeaders.set("Application-Names", ["exampleApp", "proAngular"]); return this.http.request(verb, url, { body: body, headers: myHeaders }).pipe(catchError((error: Response) => throwError(`Network Error: ${error.statusText} (${error.status})`))); } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class StaticDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/index.html ================================================ ExampleApp ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 25/exampleApp/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "exampleApp": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/exampleApp", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "exampleApp:build" }, "configurations": { "production": { "browserTarget": "exampleApp:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "exampleApp:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "exampleApp:serve" }, "configurations": { "production": { "devServerTarget": "exampleApp:serve:production" } } } } } }, "defaultProject": "exampleApp" } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('exampleApp app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/exampleApp'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/package.json ================================================ { "name": "example-app", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server --p 3500 restData.js" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "json-server": "^0.16.0", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/restData.js ================================================ module.exports = function () { var data = { products: [ { id: 1, name: "Kayak", category: "Watersports", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", price: 1200 } ] } return data } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/app.component.html ================================================ ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", templateUrl: "./app.component.html" }) export class AppComponent { } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/app.module.ts ================================================ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { ModelModule } from "./model/model.module"; import { CoreModule } from "./core/core.module"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { MessageModule } from "./messages/message.module"; import { MessageComponent } from "./messages/message.component"; import { AppComponent } from './app.component'; import { routing } from "./app.routing"; @NgModule({ imports: [BrowserModule, ModelModule, CoreModule, MessageModule, routing], declarations: [AppComponent], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/app.routing.ts ================================================ import { Routes, RouterModule } from "@angular/router"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { NotFoundComponent } from "./core/notFound.component"; import { ProductCountComponent } from "./core/productCount.component"; import { CategoryCountComponent } from "./core/categoryCount.component"; const childRoutes: Routes = [ { path: "products", component: ProductCountComponent }, { path: "categories", component: CategoryCountComponent }, { path: "", component: ProductCountComponent } ]; const routes: Routes = [ { path: "form/:mode/:id", component: FormComponent }, { path: "form/:mode", component: FormComponent }, { path: "does", redirectTo: "/form/create", pathMatch: "prefix" }, { path: "table", component: TableComponent, children: childRoutes }, { path: "table/:category", component: TableComponent, children: childRoutes }, { path: "", redirectTo: "/table", pathMatch: "full" }, { path: "**", component: NotFoundComponent } ] export const routing = RouterModule.forRoot(routes); ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/categoryCount.component.ts ================================================ import { Component, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { Model } from "../model/repository.model"; @Component({ selector: "paCategoryCount", template: `
There are {{count}} categories
` }) export class CategoryCountComponent { private differ: KeyValueDiffer; count: number = 0; constructor(private model: Model, private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef) { } ngOnInit() { this.differ = this.keyValueDiffers .find(this.model.getProducts()) .create(); } ngDoCheck() { if (this.differ.diff(this.model.getProducts()) != null) { this.count = this.model.getProducts() .map(p => p.category) .filter((category, index, array) => array.indexOf(category) == index) .length; } } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/core.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { TableComponent } from "./table.component"; import { FormComponent } from "./form.component"; import { Subject } from "rxjs"; import { StatePipe } from "./state.pipe"; import { MessageModule } from "../messages/message.module"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { Model } from "../model/repository.model"; import { RouterModule } from "@angular/router"; import { ProductCountComponent } from "./productCount.component"; import { CategoryCountComponent } from "./categoryCount.component"; import { NotFoundComponent } from "./notFound.component"; @NgModule({ imports: [BrowserModule, FormsModule, ModelModule, MessageModule, RouterModule], declarations: [TableComponent, FormComponent, StatePipe, ProductCountComponent, CategoryCountComponent, NotFoundComponent], exports: [ModelModule, TableComponent, FormComponent] }) export class CoreModule { } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/form.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/form.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/form.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { ActivatedRoute, Router } from "@angular/router"; @Component({ selector: "paForm", templateUrl: "form.component.html", styleUrls: ["form.component.css"] }) export class FormComponent { product: Product = new Product(); constructor(public model: Model, activeRoute: ActivatedRoute, public router: Router) { activeRoute.params.subscribe(params => { this.editing = params["mode"] == "edit"; let id = params["id"]; if (id != null) { Object.assign(this.product, model.getProduct(id) || new Product()); } }) } editing: boolean = false; submitForm(form: NgForm) { if (form.valid) { this.model.saveProduct(this.product); this.router.navigateByUrl("/"); } } resetForm() { this.product = new Product(); } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/notFound.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "paNotFound", template: `

Sorry, something went wrong

` }) export class NotFoundComponent {} ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/productCount.component.ts ================================================ import { Component, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { Model } from "../model/repository.model"; import { ActivatedRoute } from "@angular/router"; @Component({ selector: "paProductCount", template: `
There are {{count}} products
` }) export class ProductCountComponent { private differ: KeyValueDiffer; count: number = 0; private category: string; constructor(private model: Model, private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef, activeRoute: ActivatedRoute) { activeRoute.pathFromRoot.forEach(route => route.params.subscribe(params => { if (params["category"] != null) { this.category = params["category"]; this.updateCount(); } })) } ngOnInit() { this.differ = this.keyValueDiffers .find(this.model.getProducts()) .create(); } ngDoCheck() { if (this.differ.diff(this.model.getProducts()) != null) { this.updateCount(); } } private updateCount() { this.count = this.model.getProducts() .filter(p => this.category == null || p.category == this.category) .length; } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/sharedState.model.ts ================================================ import { InjectionToken } from "@angular/core"; export enum MODES { CREATE, EDIT } export const SHARED_STATE = new InjectionToken("shared_state"); export class SharedState { constructor(public mode: MODES, public id?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/state.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { SharedState, MODES } from "./sharedState.model"; import { Model } from "../model/repository.model"; @Pipe({ name: "formatState", pure: true }) export class StatePipe { constructor(private model: Model) { } transform(value: any): string { if (value instanceof SharedState) { let state = value as SharedState; return MODES[state.mode] + (state.id != undefined ? ` ${this.model.getProduct(state.id).name}` : ""); } else { return "" } } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/table.component.html ================================================
IDNameCategoryPrice
{{item.id}} {{item.name}} {{item.category}} {{item.price | currency:"USD" }}
================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/core/table.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { ActivatedRoute } from "@angular/router"; @Component({ selector: "paTable", templateUrl: "table.component.html" }) export class TableComponent { category: string = null; constructor(public model: Model, activeRoute: ActivatedRoute) { activeRoute.params.subscribe(params => { this.category = params["category"] || null; }) } getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts() .filter(p => this.category == null || p.category == this.category); } get categories(): string[] { return this.model.getProducts() .map(p => p.category) .filter((category, index, array) => array.indexOf(category) == index); } deleteProduct(key: number) { this.model.deleteProduct(key); } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/messages/errorHandler.ts ================================================ import { ErrorHandler, Injectable, NgZone } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; @Injectable() export class MessageErrorHandler implements ErrorHandler { constructor(private messageService: MessageService, private ngZone: NgZone) { } handleError(error) { let msg = error instanceof Error ? error.message : error.toString(); this.ngZone.run(() => this.messageService .reportMessage(new Message(msg, true)), 0); } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/messages/message.component.html ================================================

{{lastMessage.text}}

================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/messages/message.component.ts ================================================ import { Component } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Router, NavigationEnd, NavigationCancel } from "@angular/router"; import { filter } from "rxjs/operators"; @Component({ selector: "paMessages", templateUrl: "message.component.html", }) export class MessageComponent { lastMessage: Message; constructor(messageService: MessageService, router: Router) { messageService.messages.subscribe(m => this.lastMessage = m); router.events .pipe(filter(e => e instanceof NavigationEnd || e instanceof NavigationCancel)) .subscribe(e => { this.lastMessage = null; }); } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/messages/message.model.ts ================================================ export class Message { constructor(public text: string, public error: boolean = false) { } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/messages/message.module.ts ================================================ import { NgModule, ErrorHandler } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { MessageComponent } from "./message.component"; import { MessageService } from "./message.service"; import { MessageErrorHandler } from "./errorHandler"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [BrowserModule, RouterModule], declarations: [MessageComponent], exports: [MessageComponent], providers: [MessageService, { provide: ErrorHandler, useClass: MessageErrorHandler }] }) export class MessageModule { } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/messages/message.service.ts ================================================ import { Injectable } from "@angular/core"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Subject } from "rxjs"; @Injectable() export class MessageService { private subject = new Subject(); reportMessage(msg: Message) { this.subject.next(msg); } get messages(): Observable { return this.subject; } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; //import { StaticDataSource } from "./static.datasource"; import { Model } from "./repository.model"; import { HttpClientModule, HttpClientJsonpModule } from "@angular/common/http"; import { RestDataSource, REST_URL } from "./rest.datasource"; @NgModule({ imports: [HttpClientModule, HttpClientJsonpModule], providers: [Model, RestDataSource, { provide: REST_URL, useValue: `http://${location.hostname}:3500/products` }] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/model/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) {} } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/model/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class Model { private products: Product[] = new Array(); private locator = (p: Product, id: number) => p.id == id; constructor(private dataSource: RestDataSource) { this.dataSource.getData().subscribe(data => this.products = data); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } getNextProductId(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[this.products.length > index + 2 ? index + 1 : 0].id; } else { return id || 0; } } getPreviousProductid(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[index > 0 ? index - 1 : this.products.length - 1].id; } else { return id || 0; } } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product).subscribe(p => { let index = this.products .findIndex(item => this.locator(item, p.id)); this.products.splice(index, 1, p); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(() => { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } }); } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/model/rest.datasource.ts ================================================ import { Injectable, Inject, InjectionToken } from "@angular/core"; import { HttpClient, HttpHeaders } from "@angular/common/http"; import { Observable, throwError } from "rxjs"; import { Product } from "./product.model"; import { catchError } from "rxjs/operators"; export const REST_URL = new InjectionToken("rest_url"); @Injectable() export class RestDataSource { constructor(private http: HttpClient, @Inject(REST_URL) private url: string) { } getData(): Observable { return this.sendRequest("GET", this.url); } saveProduct(product: Product): Observable { return this.sendRequest("POST", this.url, product); } updateProduct(product: Product): Observable { return this.sendRequest("PUT", `${this.url}/${product.id}`, product); } deleteProduct(id: number): Observable { return this.sendRequest("DELETE", `${this.url}/${id}`); } private sendRequest(verb: string, url: string, body?: Product) : Observable { let myHeaders = new HttpHeaders(); myHeaders = myHeaders.set("Access-Key", ""); myHeaders = myHeaders.set("Application-Names", ["exampleApp", "proAngular"]); return this.http.request(verb, url, { body: body, headers: myHeaders }).pipe(catchError((error: Response) => throwError(`Network Error: ${error.statusText} (${error.status})`))); } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class StaticDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/index.html ================================================ ExampleApp ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 26/exampleApp/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "exampleApp": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/exampleApp", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "exampleApp:build" }, "configurations": { "production": { "browserTarget": "exampleApp:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "exampleApp:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "exampleApp:serve" }, "configurations": { "production": { "devServerTarget": "exampleApp:serve:production" } } } } } }, "defaultProject": "exampleApp" } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('exampleApp app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/exampleApp'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/package.json ================================================ { "name": "example-app", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server --p 3500 restData.js" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "json-server": "^0.16.0", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/restData.js ================================================ module.exports = function () { var data = { products: [ { id: 1, name: "Kayak", category: "Watersports", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", price: 1200 } ] } return data } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/app.component.html ================================================ ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", templateUrl: "./app.component.html" }) export class AppComponent { } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ModelModule } from "./model/model.module"; import { CoreModule } from "./core/core.module"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { MessageModule } from "./messages/message.module"; import { MessageComponent } from "./messages/message.component"; import { routing } from "./app.routing"; import { AppComponent } from "./app.component"; import { TermsGuard } from "./terms.guard" import { LoadGuard } from "./load.guard"; @NgModule({ imports: [BrowserModule, CoreModule, MessageModule, routing], declarations: [AppComponent], providers: [TermsGuard, LoadGuard], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/app.routing.ts ================================================ import { Routes, RouterModule } from "@angular/router"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { NotFoundComponent } from "./core/notFound.component"; import { ProductCountComponent } from "./core/productCount.component"; import { CategoryCountComponent } from "./core/categoryCount.component"; import { ModelResolver } from "./model/model.resolver"; import { TermsGuard } from "./terms.guard"; import { UnsavedGuard } from "./core/unsaved.guard"; import { LoadGuard } from "./load.guard"; const childRoutes: Routes = [ { path: "", canActivateChild: [TermsGuard], children: [{ path: "products", component: ProductCountComponent }, { path: "categories", component: CategoryCountComponent }, { path: "", component: ProductCountComponent }], resolve: { model: ModelResolver } } ]; const routes: Routes = [ { path: "ondemand", loadChildren: () => import("./ondemand/ondemand.module") .then(m => m.OndemandModule), canLoad: [LoadGuard] }, { path: "form/:mode/:id", component: FormComponent, resolve: { model: ModelResolver }, canDeactivate: [UnsavedGuard] }, { path: "form/:mode", component: FormComponent, resolve: { model: ModelResolver }, canActivate: [TermsGuard] }, { path: "table", component: TableComponent, children: childRoutes }, { path: "table/:category", component: TableComponent, children: childRoutes }, { path: "", redirectTo: "/table", pathMatch: "full" }, { path: "**", component: NotFoundComponent } ] export const routing = RouterModule.forRoot(routes); ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/categoryCount.component.ts ================================================ import { Component, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { Model } from "../model/repository.model"; @Component({ selector: "paCategoryCount", template: `
There are {{count}} categories
` }) export class CategoryCountComponent { private differ: KeyValueDiffer; count: number = 0; constructor(private model: Model, private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef) { } ngOnInit() { this.differ = this.keyValueDiffers .find(this.model.getProducts()) .create(); } ngDoCheck() { if (this.differ.diff(this.model.getProducts()) != null) { this.count = this.model.getProducts() .map(p => p.category) .filter((category, index, array) => array.indexOf(category) == index) .length; } } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/core.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { TableComponent } from "./table.component"; import { FormComponent } from "./form.component"; import { Subject } from "rxjs"; import { StatePipe } from "./state.pipe"; import { MessageModule } from "../messages/message.module"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { Model } from "../model/repository.model"; import { RouterModule } from "@angular/router"; import { ProductCountComponent } from "./productCount.component"; import { CategoryCountComponent } from "./categoryCount.component"; import { NotFoundComponent } from "./notFound.component"; import { UnsavedGuard } from "./unsaved.guard"; @NgModule({ imports: [BrowserModule, FormsModule, ModelModule, MessageModule, RouterModule], declarations: [TableComponent, FormComponent, StatePipe, ProductCountComponent, CategoryCountComponent, NotFoundComponent], providers: [UnsavedGuard], exports: [ModelModule, TableComponent, FormComponent] }) export class CoreModule { } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/form.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/form.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/form.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { ActivatedRoute, Router } from "@angular/router"; @Component({ selector: "paForm", templateUrl: "form.component.html", styleUrls: ["form.component.css"] }) export class FormComponent { product: Product = new Product(); originalProduct = new Product(); constructor(public model: Model, activeRoute: ActivatedRoute, public router: Router) { activeRoute.params.subscribe(params => { this.editing = params["mode"] == "edit"; let id = params["id"]; if (id != null) { Object.assign(this.product, model.getProduct(id) || new Product()); Object.assign(this.originalProduct, this.product); } }) } editing: boolean = false; submitForm(form: NgForm) { if (form.valid) { this.model.saveProduct(this.product); this.originalProduct = this.product; this.router.navigateByUrl("/"); } } //resetForm() { // this.product = new Product(); //} } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/notFound.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "paNotFound", template: `

Sorry, something went wrong

` }) export class NotFoundComponent {} ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/productCount.component.ts ================================================ import { Component, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { Model } from "../model/repository.model"; import { ActivatedRoute } from "@angular/router"; @Component({ selector: "paProductCount", template: `
There are {{count}} products
` }) export class ProductCountComponent { private differ: KeyValueDiffer; count: number = 0; private category: string; constructor(private model: Model, private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef, activeRoute: ActivatedRoute) { activeRoute.pathFromRoot.forEach(route => route.params.subscribe(params => { if (params["category"] != null) { this.category = params["category"]; this.updateCount(); } })) } ngOnInit() { this.differ = this.keyValueDiffers .find(this.model.getProducts()) .create(); } ngDoCheck() { if (this.differ.diff(this.model.getProducts()) != null) { this.updateCount(); } } private updateCount() { this.count = this.model.getProducts() .filter(p => this.category == null || p.category == this.category) .length; } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/sharedState.model.ts ================================================ import { InjectionToken } from "@angular/core"; export enum MODES { CREATE, EDIT } export const SHARED_STATE = new InjectionToken("shared_state"); export class SharedState { constructor(public mode: MODES, public id?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/state.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { SharedState, MODES } from "./sharedState.model"; import { Model } from "../model/repository.model"; @Pipe({ name: "formatState", pure: true }) export class StatePipe { constructor(private model: Model) { } transform(value: any): string { if (value instanceof SharedState) { let state = value as SharedState; return MODES[state.mode] + (state.id != undefined ? ` ${this.model.getProduct(state.id).name}` : ""); } else { return "" } } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/table.component.html ================================================
IDNameCategoryPrice
{{item.id}} {{item.name}} {{item.category}} {{item.price | currency:"USD" }}
================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/table.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { ActivatedRoute } from "@angular/router"; @Component({ selector: "paTable", templateUrl: "table.component.html" }) export class TableComponent { category: string = null; constructor(public model: Model, activeRoute: ActivatedRoute) { activeRoute.params.subscribe(params => { this.category = params["category"] || null; }) } getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts() .filter(p => this.category == null || p.category == this.category); } get categories(): string[] { return this.model.getProducts() .map(p => p.category) .filter((category, index, array) => array.indexOf(category) == index); } deleteProduct(key: number) { this.model.deleteProduct(key); } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/core/unsaved.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { Observable, Subject } from "rxjs"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { FormComponent } from "./form.component"; @Injectable() export class UnsavedGuard { constructor(private messages: MessageService, private router: Router) { } canDeactivate(component: FormComponent, route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean { if (component.editing) { if (["name", "category", "price"] .some(prop => component.product[prop] != component.originalProduct[prop])) { let subject = new Subject(); let responses: [string, (string) => void][] = [ ["Yes", () => { subject.next(true); subject.complete(); }], ["No", () => { this.router.navigateByUrl(this.router.url); subject.next(false); subject.complete(); }] ]; this.messages.reportMessage(new Message("Discard Changes?", true, responses)); return subject; } } return true; } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/load.guard.ts ================================================ import { Injectable } from "@angular/core"; import { Route, Router } from "@angular/router"; import { MessageService } from "./messages/message.service"; import { Message } from "./messages/message.model"; @Injectable() export class LoadGuard { private loaded: boolean = false; constructor(private messages: MessageService, private router: Router) { } canLoad(route: Route): Promise | boolean { return this.loaded || new Promise((resolve, reject) => { let responses: [string, (string) => void] [] = [ ["Yes", () => { this.loaded = true; resolve(true); }], ["No", () => { this.router.navigateByUrl(this.router.url); resolve(false); }] ]; this.messages.reportMessage( new Message("Do you want to load the module?", false, responses)); }); } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/messages/errorHandler.ts ================================================ import { ErrorHandler, Injectable, NgZone } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; @Injectable() export class MessageErrorHandler implements ErrorHandler { constructor(private messageService: MessageService, private ngZone: NgZone) { } handleError(error) { let msg = error instanceof Error ? error.message : error.toString(); this.ngZone.run(() => this.messageService .reportMessage(new Message(msg, true)), 0); } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/messages/message.component.html ================================================

{{lastMessage.text}}

================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/messages/message.component.ts ================================================ import { Component } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Router, NavigationEnd, NavigationCancel } from "@angular/router"; import { filter } from "rxjs/operators"; @Component({ selector: "paMessages", templateUrl: "message.component.html", }) export class MessageComponent { lastMessage: Message; constructor(messageService: MessageService, router: Router) { messageService.messages.subscribe(m => this.lastMessage = m); router.events .pipe(filter(e => e instanceof NavigationEnd || e instanceof NavigationCancel)) .subscribe(e => { this.lastMessage = null; }); } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/messages/message.model.ts ================================================ export class Message { constructor(public text: string, public error: boolean = false, public responses?: [string, (string) => void][]) { } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/messages/message.module.ts ================================================ import { NgModule, ErrorHandler } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { MessageComponent } from "./message.component"; import { MessageService } from "./message.service"; import { MessageErrorHandler } from "./errorHandler"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [BrowserModule, RouterModule], declarations: [MessageComponent], exports: [MessageComponent], providers: [MessageService, { provide: ErrorHandler, useClass: MessageErrorHandler }] }) export class MessageModule { } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/messages/message.service.ts ================================================ import { Injectable } from "@angular/core"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Subject } from "rxjs"; @Injectable() export class MessageService { private subject = new Subject(); reportMessage(msg: Message) { this.subject.next(msg); } get messages(): Observable { return this.subject; } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { Model } from "./repository.model"; import { HttpClientModule, HttpClientJsonpModule } from "@angular/common/http"; import { RestDataSource, REST_URL } from "./rest.datasource"; import { ModelResolver } from "./model.resolver"; @NgModule({ imports: [HttpClientModule, HttpClientJsonpModule], providers: [Model, RestDataSource, ModelResolver, { provide: REST_URL, useValue: "http://localhost:3500/products" }] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/model/model.resolver.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot } from "@angular/router"; import { Observable } from "rxjs"; import { Model } from "./repository.model" import { RestDataSource } from "./rest.datasource"; import { Product } from "./product.model"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; @Injectable() export class ModelResolver { constructor( private model: Model, private dataSource: RestDataSource, private messages: MessageService) { } resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable { if (this.model.getProducts().length == 0) { this.messages.reportMessage(new Message("Loading data...")); return this.dataSource.getData(); } } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/model/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) {} } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/model/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class Model { private products: Product[] = new Array(); private locator = (p: Product, id: number) => p.id == id; constructor(private dataSource: RestDataSource) { this.dataSource.getData().subscribe(data => this.products = data); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } getNextProductId(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[this.products.length > index + 2 ? index + 1 : 0].id; } else { return id || 0; } } getPreviousProductid(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[index > 0 ? index - 1 : this.products.length - 1].id; } else { return id || 0; } } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product).subscribe(p => { let index = this.products .findIndex(item => this.locator(item, p.id)); this.products.splice(index, 1, p); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(() => { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } }); } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/model/rest.datasource.ts ================================================ import { Injectable, Inject, InjectionToken } from "@angular/core"; import { HttpClient, HttpHeaders } from "@angular/common/http"; import { Observable, throwError } from "rxjs"; import { Product } from "./product.model"; import { catchError, delay } from "rxjs/operators"; export const REST_URL = new InjectionToken("rest_url"); @Injectable() export class RestDataSource { constructor(private http: HttpClient, @Inject(REST_URL) private url: string) { } getData(): Observable { return this.sendRequest("GET", this.url); } saveProduct(product: Product): Observable { return this.sendRequest("POST", this.url, product); } updateProduct(product: Product): Observable { return this.sendRequest("PUT", `${this.url}/${product.id}`, product); } deleteProduct(id: number): Observable { return this.sendRequest("DELETE", `${this.url}/${id}`); } private sendRequest(verb: string, url: string, body?: Product) : Observable { let myHeaders = new HttpHeaders(); myHeaders = myHeaders.set("Access-Key", ""); myHeaders = myHeaders.set("Application-Names", ["exampleApp", "proAngular"]); return this.http.request(verb, url, { body: body, headers: myHeaders }) .pipe(delay(5000)) .pipe(catchError((error: Response) => throwError(`Network Error: ${error.statusText} (${error.status})`))); } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class StaticDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/ondemand/first.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "first", template: `
First Component
` }) export class FirstComponent { } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/ondemand/ondemand.component.html ================================================
This is the ondemand component
================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/ondemand/ondemand.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "ondemand", templateUrl: "ondemand.component.html" }) export class OndemandComponent { } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/ondemand/ondemand.module.ts ================================================ import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; import { OndemandComponent } from "./ondemand.component"; import { RouterModule } from "@angular/router"; import { FirstComponent } from "./first.component"; import { SecondComponent } from "./second.component"; let routing = RouterModule.forChild([ { path: "", component: OndemandComponent, children: [ { path: "", children: [ { outlet: "primary", path: "", component: FirstComponent, }, { outlet: "left", path: "", component: SecondComponent, }, { outlet: "right", path: "", component: SecondComponent, }, ] }, { path: "swap", children: [ { outlet: "primary", path: "", component: SecondComponent, }, { outlet: "left", path: "", component: FirstComponent, }, { outlet: "right", path: "", component: FirstComponent, }, ] }, ] }, ]); @NgModule({ imports: [CommonModule, routing], declarations: [OndemandComponent, FirstComponent, SecondComponent], exports: [OndemandComponent] }) export class OndemandModule { } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/ondemand/second.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "second", template: `
Second Component
` }) export class SecondComponent { } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/app/terms.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { MessageService } from "./messages/message.service"; import { Message } from "./messages/message.model"; @Injectable() export class TermsGuard { constructor(private messages: MessageService, private router: Router) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise | boolean { if (route.params["mode"] == "create") { return new Promise((resolve, reject) => { let responses: [string, (string) => void][] = [ ["Yes", () => resolve(true)], ["No", () => resolve(false)] ]; this.messages.reportMessage( new Message("Do you accept the terms & conditions?", false, responses)); }); } else { return true; } } canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise | boolean { if (route.url.length > 0 && route.url[route.url.length - 1].path == "categories") { return new Promise((resolve, reject) => { let responses: [string, (string) => void][] = [ ["Yes", () => resolve(true)], ["No ", () => resolve(false)] ]; this.messages.reportMessage( new Message("Do you want to see the categories component?", false, responses)); }); } else { return true; } } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/index.html ================================================ ExampleApp ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 27/exampleApp/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "exampleApp": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/exampleApp", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "exampleApp:build" }, "configurations": { "production": { "browserTarget": "exampleApp:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "exampleApp:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "exampleApp:serve" }, "configurations": { "production": { "devServerTarget": "exampleApp:serve:production" } } } } } }, "defaultProject": "exampleApp" } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('exampleApp app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/exampleApp'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/package.json ================================================ { "name": "example-app", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server --p 3500 restData.js" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "json-server": "^0.16.0", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/restData.js ================================================ module.exports = function () { var data = { products: [ { id: 1, name: "Kayak", category: "Watersports", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", price: 1200 } ] } return data } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/app.component.html ================================================ ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", templateUrl: "./app.component.html" }) export class AppComponent { } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ModelModule } from "./model/model.module"; import { CoreModule } from "./core/core.module"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { MessageModule } from "./messages/message.module"; import { MessageComponent } from "./messages/message.component"; import { routing } from "./app.routing"; import { AppComponent } from "./app.component"; import { TermsGuard } from "./terms.guard" import { LoadGuard } from "./load.guard"; import { BrowserAnimationsModule } from "@angular/platform-browser/animations"; @NgModule({ imports: [BrowserModule, CoreModule, MessageModule, routing, BrowserAnimationsModule], declarations: [AppComponent], providers: [TermsGuard, LoadGuard], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/app.routing.ts ================================================ import { Routes, RouterModule } from "@angular/router"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { NotFoundComponent } from "./core/notFound.component"; import { ProductCountComponent } from "./core/productCount.component"; import { CategoryCountComponent } from "./core/categoryCount.component"; import { ModelResolver } from "./model/model.resolver"; import { TermsGuard } from "./terms.guard"; import { UnsavedGuard } from "./core/unsaved.guard"; import { LoadGuard } from "./load.guard"; const routes: Routes = [ { path: "form/:mode/:id", component: FormComponent, canDeactivate: [UnsavedGuard] }, { path: "form/:mode", component: FormComponent, canActivate: [TermsGuard] }, { path: "table", component: TableComponent }, { path: "table/:category", component: TableComponent }, { path: "", redirectTo: "/table", pathMatch: "full" }, { path: "**", component: NotFoundComponent } ] export const routing = RouterModule.forRoot(routes); ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/animationUtils.ts ================================================ export function getStylesFromClasses(names: string | string[], elementType: string = "div") : { [key: string]: string | number } { let elem = document.createElement(elementType); (typeof names == "string" ? [names] : names).forEach(c => elem.classList.add(c)); let result = {}; for (let i = 0; i < document.styleSheets.length; i++) { let sheet = document.styleSheets[i] as CSSStyleSheet; let rules = sheet.rules || sheet.cssRules; for (let j = 0; j < rules.length; j++) { if (rules[j].type == CSSRule.STYLE_RULE) { let styleRule = rules[j] as CSSStyleRule; if (elem.matches(styleRule.selectorText)) { for (let k = 0; k < styleRule.style.length; k++) { result[styleRule.style[k]] = styleRule.style[styleRule.style[k]]; } } } } } return result; } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/categoryCount.component.ts ================================================ import { Component, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { Model } from "../model/repository.model"; @Component({ selector: "paCategoryCount", template: `
There are {{count}} categories
` }) export class CategoryCountComponent { private differ: KeyValueDiffer; count: number = 0; constructor(private model: Model, private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef) { } ngOnInit() { this.differ = this.keyValueDiffers .find(this.model.getProducts()) .create(); } ngDoCheck() { if (this.differ.diff(this.model.getProducts()) != null) { this.count = this.model.getProducts() .map(p => p.category) .filter((category, index, array) => array.indexOf(category) == index) .length; } } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/core.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { TableComponent } from "./table.component"; import { FormComponent } from "./form.component"; import { Subject } from "rxjs"; import { StatePipe } from "./state.pipe"; import { MessageModule } from "../messages/message.module"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { Model } from "../model/repository.model"; import { RouterModule } from "@angular/router"; import { ProductCountComponent } from "./productCount.component"; import { CategoryCountComponent } from "./categoryCount.component"; import { NotFoundComponent } from "./notFound.component"; import { UnsavedGuard } from "./unsaved.guard"; @NgModule({ imports: [BrowserModule, FormsModule, ModelModule, MessageModule, RouterModule], declarations: [TableComponent, FormComponent, StatePipe, ProductCountComponent, CategoryCountComponent, NotFoundComponent], providers: [UnsavedGuard], exports: [ModelModule, TableComponent, FormComponent] }) export class CoreModule { } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/form.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/form.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/form.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { ActivatedRoute, Router } from "@angular/router"; @Component({ selector: "paForm", templateUrl: "form.component.html", styleUrls: ["form.component.css"] }) export class FormComponent { product: Product = new Product(); originalProduct = new Product(); constructor(public model: Model, activeRoute: ActivatedRoute, public router: Router) { activeRoute.params.subscribe(params => { this.editing = params["mode"] == "edit"; let id = params["id"]; if (id != null) { Object.assign(this.product, model.getProduct(id) || new Product()); Object.assign(this.originalProduct, this.product); } }) } editing: boolean = false; submitForm(form: NgForm) { if (form.valid) { this.model.saveProduct(this.product); this.originalProduct = this.product; this.router.navigateByUrl("/"); } } //resetForm() { // this.product = new Product(); //} } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/notFound.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "paNotFound", template: `

Sorry, something went wrong

` }) export class NotFoundComponent {} ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/productCount.component.ts ================================================ import { Component, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { Model } from "../model/repository.model"; import { ActivatedRoute } from "@angular/router"; @Component({ selector: "paProductCount", template: `
There are {{count}} products
` }) export class ProductCountComponent { private differ: KeyValueDiffer; count: number = 0; private category: string; constructor(private model: Model, private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef, activeRoute: ActivatedRoute) { activeRoute.pathFromRoot.forEach(route => route.params.subscribe(params => { if (params["category"] != null) { this.category = params["category"]; this.updateCount(); } })) } ngOnInit() { this.differ = this.keyValueDiffers .find(this.model.getProducts()) .create(); } ngDoCheck() { if (this.differ.diff(this.model.getProducts()) != null) { this.updateCount(); } } private updateCount() { this.count = this.model.getProducts() .filter(p => this.category == null || p.category == this.category) .length; } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/sharedState.model.ts ================================================ import { InjectionToken } from "@angular/core"; export enum MODES { CREATE, EDIT } export const SHARED_STATE = new InjectionToken("shared_state"); export class SharedState { constructor(public mode: MODES, public id?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/state.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { SharedState, MODES } from "./sharedState.model"; import { Model } from "../model/repository.model"; @Pipe({ name: "formatState", pure: true }) export class StatePipe { constructor(private model: Model) { } transform(value: any): string { if (value instanceof SharedState) { let state = value as SharedState; return MODES[state.mode] + (state.id != undefined ? ` ${this.model.getProduct(state.id).name}` : ""); } else { return "" } } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/table.animations.ts ================================================ import { trigger, style, state, transition, animate, group } from "@angular/animations"; import { getStylesFromClasses } from "./animationUtils"; export const HighlightTrigger = trigger("rowHighlight", [ state("selected", style(getStylesFromClasses(["bg-success", "h2"]))), state("notselected", style(getStylesFromClasses("bg-info"))), state("void", style({ transform: "translateX(-50%)" })), transition("* => notselected", animate("200ms")), transition("* => selected", animate("400ms 200ms ease-in")), transition("void => *", animate("500ms")) ]); ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/table.component.html ================================================
IDNameCategoryPrice
{{item.id}} {{item.name}} {{item.category}} {{item.price | currency:"USD" }}
================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/table.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { ActivatedRoute } from "@angular/router"; import { HighlightTrigger } from "./table.animations"; @Component({ selector: "paTable", templateUrl: "table.component.html", animations: [HighlightTrigger] }) export class TableComponent { category: string = null; constructor(private model: Model, activeRoute: ActivatedRoute) { activeRoute.params.subscribe(params => { this.category = params["category"] || null; }) } getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts() .filter(p => this.category == null || p.category == this.category); } get categories(): string[] { return this.model.getProducts() .map(p => p.category) .filter((category, index, array) => array.indexOf(category) == index); } deleteProduct(key: number) { this.model.deleteProduct(key); } highlightCategory: string = ""; getRowState(category: string): string { return this.highlightCategory == "" ? "" : this.highlightCategory == category ? "selected" : "notselected"; } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/core/unsaved.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { Observable, Subject } from "rxjs"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { FormComponent } from "./form.component"; @Injectable() export class UnsavedGuard { constructor(private messages: MessageService, private router: Router) { } canDeactivate(component: FormComponent, route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean { if (component.editing) { if (["name", "category", "price"] .some(prop => component.product[prop] != component.originalProduct[prop])) { let subject = new Subject(); let responses: [string, (string) => void][] = [ ["Yes", () => { subject.next(true); subject.complete(); }], ["No", () => { this.router.navigateByUrl(this.router.url); subject.next(false); subject.complete(); }] ]; this.messages.reportMessage(new Message("Discard Changes?", true, responses)); return subject; } } return true; } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/load.guard.ts ================================================ import { Injectable } from "@angular/core"; import { Route, Router } from "@angular/router"; import { MessageService } from "./messages/message.service"; import { Message } from "./messages/message.model"; @Injectable() export class LoadGuard { private loaded: boolean = false; constructor(private messages: MessageService, private router: Router) { } canLoad(route: Route): Promise | boolean { return this.loaded || new Promise((resolve, reject) => { let responses: [string, (string) => void] [] = [ ["Yes", () => { this.loaded = true; resolve(true); }], ["No", () => { this.router.navigateByUrl(this.router.url); resolve(false); }] ]; this.messages.reportMessage( new Message("Do you want to load the module?", false, responses)); }); } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/messages/errorHandler.ts ================================================ import { ErrorHandler, Injectable, NgZone } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; @Injectable() export class MessageErrorHandler implements ErrorHandler { constructor(private messageService: MessageService, private ngZone: NgZone) { } handleError(error) { let msg = error instanceof Error ? error.message : error.toString(); this.ngZone.run(() => this.messageService .reportMessage(new Message(msg, true)), 0); } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/messages/message.component.html ================================================

{{lastMessage.text}}

================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/messages/message.component.ts ================================================ import { Component } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Router, NavigationEnd, NavigationCancel } from "@angular/router"; import { filter } from "rxjs/operators"; @Component({ selector: "paMessages", templateUrl: "message.component.html", }) export class MessageComponent { lastMessage: Message; constructor(messageService: MessageService, router: Router) { messageService.messages.subscribe(m => this.lastMessage = m); router.events .pipe(filter(e => e instanceof NavigationEnd || e instanceof NavigationCancel)) .subscribe(e => { this.lastMessage = null; }); } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/messages/message.model.ts ================================================ export class Message { constructor(public text: string, public error: boolean = false, public responses?: [string, (string) => void][]) { } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/messages/message.module.ts ================================================ import { NgModule, ErrorHandler } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { MessageComponent } from "./message.component"; import { MessageService } from "./message.service"; import { MessageErrorHandler } from "./errorHandler"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [BrowserModule, RouterModule], declarations: [MessageComponent], exports: [MessageComponent], providers: [MessageService, { provide: ErrorHandler, useClass: MessageErrorHandler }] }) export class MessageModule { } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/messages/message.service.ts ================================================ import { Injectable } from "@angular/core"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Subject } from "rxjs"; @Injectable() export class MessageService { private subject = new Subject(); reportMessage(msg: Message) { this.subject.next(msg); } get messages(): Observable { return this.subject; } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { Model } from "./repository.model"; import { HttpClientModule, HttpClientJsonpModule } from "@angular/common/http"; import { RestDataSource, REST_URL } from "./rest.datasource"; import { ModelResolver } from "./model.resolver"; @NgModule({ imports: [HttpClientModule, HttpClientJsonpModule], providers: [Model, RestDataSource, ModelResolver, { provide: REST_URL, useValue: "http://localhost:3500/products" }] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/model/model.resolver.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot } from "@angular/router"; import { Observable } from "rxjs"; import { Model } from "./repository.model" import { RestDataSource } from "./rest.datasource"; import { Product } from "./product.model"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; @Injectable() export class ModelResolver { constructor( private model: Model, private dataSource: RestDataSource, private messages: MessageService) { } resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable { if (this.model.getProducts().length == 0) { this.messages.reportMessage(new Message("Loading data...")); return this.dataSource.getData(); } } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/model/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) {} } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/model/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class Model { private products: Product[] = new Array(); private locator = (p: Product, id: number) => p.id == id; constructor(private dataSource: RestDataSource) { this.dataSource.getData().subscribe(data => this.products = data); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } getNextProductId(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[this.products.length > index + 2 ? index + 1 : 0].id; } else { return id || 0; } } getPreviousProductid(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[index > 0 ? index - 1 : this.products.length - 1].id; } else { return id || 0; } } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product).subscribe(p => { let index = this.products .findIndex(item => this.locator(item, p.id)); this.products.splice(index, 1, p); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(() => { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } }); } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/model/rest.datasource.ts ================================================ import { Injectable, Inject, InjectionToken } from "@angular/core"; import { HttpClient, HttpHeaders } from "@angular/common/http"; import { Observable, throwError } from "rxjs"; import { Product } from "./product.model"; import { catchError, delay } from "rxjs/operators"; export const REST_URL = new InjectionToken("rest_url"); @Injectable() export class RestDataSource { constructor(private http: HttpClient, @Inject(REST_URL) private url: string) { } getData(): Observable { return this.sendRequest("GET", this.url); } saveProduct(product: Product): Observable { return this.sendRequest("POST", this.url, product); } updateProduct(product: Product): Observable { return this.sendRequest("PUT", `${this.url}/${product.id}`, product); } deleteProduct(id: number): Observable { return this.sendRequest("DELETE", `${this.url}/${id}`); } private sendRequest(verb: string, url: string, body?: Product) : Observable { let myHeaders = new HttpHeaders(); myHeaders = myHeaders.set("Access-Key", ""); myHeaders = myHeaders.set("Application-Names", ["exampleApp", "proAngular"]); return this.http.request(verb, url, { body: body, headers: myHeaders }) //.pipe(delay(5000)) .pipe(catchError((error: Response) => throwError(`Network Error: ${error.statusText} (${error.status})`))); } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class StaticDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/ondemand/first.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "first", template: `
First Component
` }) export class FirstComponent { } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/ondemand/ondemand.component.html ================================================
This is the ondemand component
================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/ondemand/ondemand.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "ondemand", templateUrl: "ondemand.component.html" }) export class OndemandComponent { } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/ondemand/ondemand.module.ts ================================================ import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; import { OndemandComponent } from "./ondemand.component"; import { RouterModule } from "@angular/router"; import { FirstComponent } from "./first.component"; import { SecondComponent } from "./second.component"; let routing = RouterModule.forChild([ { path: "", component: OndemandComponent, children: [ { path: "", children: [ { outlet: "primary", path: "", component: FirstComponent, }, { outlet: "left", path: "", component: SecondComponent, }, { outlet: "right", path: "", component: SecondComponent, }, ] }, { path: "swap", children: [ { outlet: "primary", path: "", component: SecondComponent, }, { outlet: "left", path: "", component: FirstComponent, }, { outlet: "right", path: "", component: FirstComponent, }, ] }, ] }, ]); @NgModule({ imports: [CommonModule, routing], declarations: [OndemandComponent, FirstComponent, SecondComponent], exports: [OndemandComponent] }) export class OndemandModule { } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/ondemand/second.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "second", template: `
Second Component
` }) export class SecondComponent { } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/app/terms.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { MessageService } from "./messages/message.service"; import { Message } from "./messages/message.model"; @Injectable() export class TermsGuard { constructor(private messages: MessageService, private router: Router) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise | boolean { if (route.params["mode"] == "create") { return new Promise((resolve, reject) => { let responses: [string, (string) => void][] = [ ["Yes", () => resolve(true)], ["No", () => resolve(false)] ]; this.messages.reportMessage( new Message("Do you accept the terms & conditions?", false, responses)); }); } else { return true; } } canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise | boolean { if (route.url.length > 0 && route.url[route.url.length - 1].path == "categories") { return new Promise((resolve, reject) => { let responses: [string, (string) => void][] = [ ["Yes", () => resolve(true)], ["No ", () => resolve(false)] ]; this.messages.reportMessage( new Message("Do you want to see the categories component?", false, responses)); }); } else { return true; } } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/index.html ================================================ ExampleApp ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 28/exampleApp/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/.browserslistrc ================================================ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # For additional information regarding the format and rule options, please see: # https://github.com/browserslist/browserslist#queries # For the full list of supported browsers by the Angular framework, please see: # https://angular.io/guide/browser-support # You can see what browsers were selected by your queries by running: # npx browserslist last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 Safari major versions last 2 iOS major versions Firefox ESR not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/angular.json ================================================ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "exampleApp": { "projectType": "application", "schematics": { "@schematics/angular:class": { "skipTests": true }, "@schematics/angular:component": { "skipTests": true }, "@schematics/angular:directive": { "skipTests": true }, "@schematics/angular:guard": { "skipTests": true }, "@schematics/angular:interceptor": { "skipTests": true }, "@schematics/angular:module": { "skipTests": true }, "@schematics/angular:pipe": { "skipTests": true }, "@schematics/angular:service": { "skipTests": true } }, "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist/exampleApp", "index": "src/index.html", "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.app.json", "aot": true, "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css", "node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [] }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, "budgets": [ { "type": "initial", "maximumWarning": "2mb", "maximumError": "5mb" }, { "type": "anyComponentStyle", "maximumWarning": "6kb", "maximumError": "10kb" } ] } } }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "exampleApp:build" }, "configurations": { "production": { "browserTarget": "exampleApp:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "exampleApp:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "tsconfig.spec.json", "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ "src/styles.css" ], "scripts": [] } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": [ "**/node_modules/**" ] } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "exampleApp:serve" }, "configurations": { "production": { "devServerTarget": "exampleApp:serve:production" } } } } } }, "defaultProject": "exampleApp" } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/e2e/protractor.conf.js ================================================ // @ts-check // Protractor configuration file, see link for more information // https://github.com/angular/protractor/blob/master/lib/config.ts const { SpecReporter, StacktraceOption } = require('jasmine-spec-reporter'); /** * @type { import("protractor").Config } */ exports.config = { allScriptsTimeout: 11000, specs: [ './src/**/*.e2e-spec.ts' ], capabilities: { browserName: 'chrome' }, directConnect: true, SELENIUM_PROMISE_MANAGER: false, baseUrl: 'http://localhost:4200/', framework: 'jasmine', jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000, print: function() {} }, onPrepare() { require('ts-node').register({ project: require('path').join(__dirname, './tsconfig.json') }); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: StacktraceOption.PRETTY } })); } }; ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/e2e/src/app.e2e-spec.ts ================================================ import { AppPage } from './app.po'; import { browser, logging } from 'protractor'; describe('workspace-project App', () => { let page: AppPage; beforeEach(() => { page = new AppPage(); }); it('should display welcome message', async () => { await page.navigateTo(); expect(await page.getTitleText()).toEqual('exampleApp app is running!'); }); afterEach(async () => { // Assert that there are no errors emitted from the browser const logs = await browser.manage().logs().get(logging.Type.BROWSER); expect(logs).not.toContain(jasmine.objectContaining({ level: logging.Level.SEVERE, } as logging.Entry)); }); }); ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/e2e/src/app.po.ts ================================================ import { browser, by, element } from 'protractor'; export class AppPage { async navigateTo(): Promise { return browser.get(browser.baseUrl); } async getTitleText(): Promise { return element(by.css('app-root .content span')).getText(); } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/e2e/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/e2e", "module": "commonjs", "target": "es2018", "types": [ "jasmine", "node" ] } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/karma.conf.js ================================================ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage'), require('@angular-devkit/build-angular/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, jasmineHtmlReporter: { suppressAll: true // removes the duplicated traces }, coverageReporter: { dir: require('path').join(__dirname, './coverage/exampleApp'), subdir: '.', reporters: [ { type: 'html' }, { type: 'text-summary' } ] }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, restartOnFileChange: true }); }; ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/package.json ================================================ { "name": "example-app", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", "json": "json-server --p 3500 restData.js" }, "private": true, "dependencies": { "@angular/animations": "~11.0.1", "@angular/common": "~11.0.1", "@angular/compiler": "~11.0.1", "@angular/core": "~11.0.1", "@angular/forms": "~11.0.1", "@angular/platform-browser": "~11.0.1", "@angular/platform-browser-dynamic": "~11.0.1", "@angular/router": "~11.0.1", "bootstrap": "^4.4.1", "json-server": "^0.16.0", "rxjs": "~6.6.0", "tslib": "^2.0.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "~0.1100.2", "@angular/cli": "~11.0.2", "@angular/compiler-cli": "~11.0.1", "@types/jasmine": "~3.6.0", "@types/node": "^12.11.1", "codelyzer": "^6.0.0", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~5.1.0", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~4.0.2" } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/restData.js ================================================ module.exports = function () { var data = { products: [ { id: 1, name: "Kayak", category: "Watersports", price: 275 }, { id: 2, name: "Lifejacket", category: "Watersports", price: 48.95 }, { id: 3, name: "Soccer Ball", category: "Soccer", price: 19.50 }, { id: 4, name: "Corner Flags", category: "Soccer", price: 34.95 }, { id: 5, name: "Stadium", category: "Soccer", price: 79500 }, { id: 6, name: "Thinking Cap", category: "Chess", price: 16 }, { id: 7, name: "Unsteady Chair", category: "Chess", price: 29.95 }, { id: 8, name: "Human Chess Board", category: "Chess", price: 75 }, { id: 9, name: "Bling Bling King", category: "Chess", price: 1200 } ] } return data } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/app.component.css ================================================ ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/app.component.html ================================================ ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/app.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "app", templateUrl: "./app.component.html" }) export class AppComponent { } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/app.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { ModelModule } from "./model/model.module"; import { CoreModule } from "./core/core.module"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { MessageModule } from "./messages/message.module"; import { MessageComponent } from "./messages/message.component"; import { routing } from "./app.routing"; import { AppComponent } from "./app.component"; import { TermsGuard } from "./terms.guard" import { LoadGuard } from "./load.guard"; import { BrowserAnimationsModule } from "@angular/platform-browser/animations"; @NgModule({ imports: [BrowserModule, CoreModule, MessageModule, routing, BrowserAnimationsModule], declarations: [AppComponent], providers: [TermsGuard, LoadGuard], bootstrap: [AppComponent] }) export class AppModule { } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/app.routing.ts ================================================ import { Routes, RouterModule } from "@angular/router"; import { TableComponent } from "./core/table.component"; import { FormComponent } from "./core/form.component"; import { NotFoundComponent } from "./core/notFound.component"; import { ProductCountComponent } from "./core/productCount.component"; import { CategoryCountComponent } from "./core/categoryCount.component"; import { ModelResolver } from "./model/model.resolver"; import { TermsGuard } from "./terms.guard"; import { UnsavedGuard } from "./core/unsaved.guard"; import { LoadGuard } from "./load.guard"; const routes: Routes = [ { path: "ondemand", loadChildren: () => import("./ondemand/ondemand.module") .then(m => m.OndemandModule) }, { path: "", redirectTo: "/ondemand", pathMatch: "full" } ] export const routing = RouterModule.forRoot(routes); ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/animationUtils.ts ================================================ export function getStylesFromClasses(names: string | string[], elementType: string = "div") : { [key: string]: string | number } { let elem = document.createElement(elementType); (typeof names == "string" ? [names] : names).forEach(c => elem.classList.add(c)); let result = {}; for (let i = 0; i < document.styleSheets.length; i++) { let sheet = document.styleSheets[i] as CSSStyleSheet; let rules = sheet.rules || sheet.cssRules; for (let j = 0; j < rules.length; j++) { if (rules[j].type == CSSRule.STYLE_RULE) { let styleRule = rules[j] as CSSStyleRule; if (elem.matches(styleRule.selectorText)) { for (let k = 0; k < styleRule.style.length; k++) { result[styleRule.style[k]] = styleRule.style[styleRule.style[k]]; } } } } } return result; } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/categoryCount.component.ts ================================================ import { Component, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { Model } from "../model/repository.model"; @Component({ selector: "paCategoryCount", template: `
There are {{count}} categories
` }) export class CategoryCountComponent { private differ: KeyValueDiffer; count: number = 0; constructor(private model: Model, private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef) { } ngOnInit() { this.differ = this.keyValueDiffers .find(this.model.getProducts()) .create(); } ngDoCheck() { if (this.differ.diff(this.model.getProducts()) != null) { this.count = this.model.getProducts() .map(p => p.category) .filter((category, index, array) => array.indexOf(category) == index) .length; } } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/core.module.ts ================================================ import { NgModule } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { FormsModule } from "@angular/forms"; import { ModelModule } from "../model/model.module"; import { TableComponent } from "./table.component"; import { FormComponent } from "./form.component"; import { Subject } from "rxjs"; import { StatePipe } from "./state.pipe"; import { MessageModule } from "../messages/message.module"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { Model } from "../model/repository.model"; import { RouterModule } from "@angular/router"; import { ProductCountComponent } from "./productCount.component"; import { CategoryCountComponent } from "./categoryCount.component"; import { NotFoundComponent } from "./notFound.component"; import { UnsavedGuard } from "./unsaved.guard"; @NgModule({ imports: [BrowserModule, FormsModule, ModelModule, MessageModule, RouterModule], declarations: [TableComponent, FormComponent, StatePipe, ProductCountComponent, CategoryCountComponent, NotFoundComponent], providers: [UnsavedGuard], exports: [ModelModule, TableComponent, FormComponent] }) export class CoreModule { } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/form.component.css ================================================ input.ng-dirty.ng-invalid { border: 2px solid #ff0000 } input.ng-dirty.ng-valid { border: 2px solid #6bc502 } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/form.component.html ================================================
{{editing ? "Edit" : "Create"}} Product
================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/form.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { NgForm } from "@angular/forms"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { ActivatedRoute, Router } from "@angular/router"; @Component({ selector: "paForm", templateUrl: "form.component.html", styleUrls: ["form.component.css"] }) export class FormComponent { product: Product = new Product(); originalProduct = new Product(); constructor(public model: Model, activeRoute: ActivatedRoute, public router: Router) { activeRoute.params.subscribe(params => { this.editing = params["mode"] == "edit"; let id = params["id"]; if (id != null) { Object.assign(this.product, model.getProduct(id) || new Product()); Object.assign(this.originalProduct, this.product); } }) } editing: boolean = false; submitForm(form: NgForm) { if (form.valid) { this.model.saveProduct(this.product); this.originalProduct = this.product; this.router.navigateByUrl("/"); } } //resetForm() { // this.product = new Product(); //} } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/notFound.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "paNotFound", template: `

Sorry, something went wrong

` }) export class NotFoundComponent {} ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/productCount.component.ts ================================================ import { Component, KeyValueDiffer, KeyValueDiffers, ChangeDetectorRef } from "@angular/core"; import { Model } from "../model/repository.model"; import { ActivatedRoute } from "@angular/router"; @Component({ selector: "paProductCount", template: `
There are {{count}} products
` }) export class ProductCountComponent { private differ: KeyValueDiffer; count: number = 0; private category: string; constructor(private model: Model, private keyValueDiffers: KeyValueDiffers, private changeDetector: ChangeDetectorRef, activeRoute: ActivatedRoute) { activeRoute.pathFromRoot.forEach(route => route.params.subscribe(params => { if (params["category"] != null) { this.category = params["category"]; this.updateCount(); } })) } ngOnInit() { this.differ = this.keyValueDiffers .find(this.model.getProducts()) .create(); } ngDoCheck() { if (this.differ.diff(this.model.getProducts()) != null) { this.updateCount(); } } private updateCount() { this.count = this.model.getProducts() .filter(p => this.category == null || p.category == this.category) .length; } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/sharedState.model.ts ================================================ import { InjectionToken } from "@angular/core"; export enum MODES { CREATE, EDIT } export const SHARED_STATE = new InjectionToken("shared_state"); export class SharedState { constructor(public mode: MODES, public id?: number) { } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/state.pipe.ts ================================================ import { Pipe } from "@angular/core"; import { SharedState, MODES } from "./sharedState.model"; import { Model } from "../model/repository.model"; @Pipe({ name: "formatState", pure: true }) export class StatePipe { constructor(private model: Model) { } transform(value: any): string { if (value instanceof SharedState) { let state = value as SharedState; return MODES[state.mode] + (state.id != undefined ? ` ${this.model.getProduct(state.id).name}` : ""); } else { return "" } } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/table.animations.ts ================================================ import { trigger, style, state, transition, animate, group } from "@angular/animations"; import { getStylesFromClasses } from "./animationUtils"; export const HighlightTrigger = trigger("rowHighlight", [ state("selected", style(getStylesFromClasses(["bg-success", "h2"]))), state("notselected", style(getStylesFromClasses("bg-info"))), state("void", style({ transform: "translateX(-50%)" })), transition("* => notselected", animate("200ms")), transition("* => selected", animate("400ms 200ms ease-in")), transition("void => *", animate("500ms")) ]); ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/table.component.html ================================================
IDNameCategoryPrice
{{item.id}} {{item.name}} {{item.category}} {{item.price | currency:"USD" }}
================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/table.component.ts ================================================ import { Component, Inject } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { ActivatedRoute } from "@angular/router"; import { HighlightTrigger } from "./table.animations"; @Component({ selector: "paTable", templateUrl: "table.component.html", animations: [HighlightTrigger] }) export class TableComponent { category: string = null; constructor(private model: Model, activeRoute: ActivatedRoute) { activeRoute.params.subscribe(params => { this.category = params["category"] || null; }) } getProduct(key: number): Product { return this.model.getProduct(key); } getProducts(): Product[] { return this.model.getProducts() .filter(p => this.category == null || p.category == this.category); } get categories(): string[] { return this.model.getProducts() .map(p => p.category) .filter((category, index, array) => array.indexOf(category) == index); } deleteProduct(key: number) { this.model.deleteProduct(key); } highlightCategory: string = ""; getRowState(category: string): string { return this.highlightCategory == "" ? "" : this.highlightCategory == category ? "selected" : "notselected"; } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/core/unsaved.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { Observable, Subject } from "rxjs"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; import { FormComponent } from "./form.component"; @Injectable() export class UnsavedGuard { constructor(private messages: MessageService, private router: Router) { } canDeactivate(component: FormComponent, route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean { if (component.editing) { if (["name", "category", "price"] .some(prop => component.product[prop] != component.originalProduct[prop])) { let subject = new Subject(); let responses: [string, (string) => void][] = [ ["Yes", () => { subject.next(true); subject.complete(); }], ["No", () => { this.router.navigateByUrl(this.router.url); subject.next(false); subject.complete(); }] ]; this.messages.reportMessage(new Message("Discard Changes?", true, responses)); return subject; } } return true; } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/load.guard.ts ================================================ import { Injectable } from "@angular/core"; import { Route, Router } from "@angular/router"; import { MessageService } from "./messages/message.service"; import { Message } from "./messages/message.model"; @Injectable() export class LoadGuard { private loaded: boolean = false; constructor(private messages: MessageService, private router: Router) { } canLoad(route: Route): Promise | boolean { return this.loaded || new Promise((resolve, reject) => { let responses: [string, (string) => void] [] = [ ["Yes", () => { this.loaded = true; resolve(true); }], ["No", () => { this.router.navigateByUrl(this.router.url); resolve(false); }] ]; this.messages.reportMessage( new Message("Do you want to load the module?", false, responses)); }); } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/messages/errorHandler.ts ================================================ import { ErrorHandler, Injectable, NgZone } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; @Injectable() export class MessageErrorHandler implements ErrorHandler { constructor(private messageService: MessageService, private ngZone: NgZone) { } handleError(error) { let msg = error instanceof Error ? error.message : error.toString(); this.ngZone.run(() => this.messageService .reportMessage(new Message(msg, true)), 0); } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/messages/message.component.html ================================================

{{lastMessage.text}}

================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/messages/message.component.ts ================================================ import { Component } from "@angular/core"; import { MessageService } from "./message.service"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Router, NavigationEnd, NavigationCancel } from "@angular/router"; import { filter } from "rxjs/operators"; @Component({ selector: "paMessages", templateUrl: "message.component.html", }) export class MessageComponent { lastMessage: Message; constructor(messageService: MessageService, router: Router) { messageService.messages.subscribe(m => this.lastMessage = m); router.events .pipe(filter(e => e instanceof NavigationEnd || e instanceof NavigationCancel)) .subscribe(e => { this.lastMessage = null; }); } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/messages/message.model.ts ================================================ export class Message { constructor(public text: string, public error: boolean = false, public responses?: [string, (string) => void][]) { } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/messages/message.module.ts ================================================ import { NgModule, ErrorHandler } from "@angular/core"; import { BrowserModule } from "@angular/platform-browser"; import { MessageComponent } from "./message.component"; import { MessageService } from "./message.service"; import { MessageErrorHandler } from "./errorHandler"; import { RouterModule } from "@angular/router"; @NgModule({ imports: [BrowserModule, RouterModule], declarations: [MessageComponent], exports: [MessageComponent], providers: [MessageService, { provide: ErrorHandler, useClass: MessageErrorHandler }] }) export class MessageModule { } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/messages/message.service.ts ================================================ import { Injectable } from "@angular/core"; import { Message } from "./message.model"; import { Observable } from "rxjs"; import { Subject } from "rxjs"; @Injectable() export class MessageService { private subject = new Subject(); reportMessage(msg: Message) { this.subject.next(msg); } get messages(): Observable { return this.subject; } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/model/model.module.ts ================================================ import { NgModule } from "@angular/core"; import { Model } from "./repository.model"; import { HttpClientModule, HttpClientJsonpModule } from "@angular/common/http"; import { RestDataSource, REST_URL } from "./rest.datasource"; import { ModelResolver } from "./model.resolver"; @NgModule({ imports: [HttpClientModule, HttpClientJsonpModule], providers: [Model, RestDataSource, ModelResolver, { provide: REST_URL, useValue: "http://localhost:3500/products" }] }) export class ModelModule { } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/model/model.resolver.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot } from "@angular/router"; import { Observable } from "rxjs"; import { Model } from "./repository.model" import { RestDataSource } from "./rest.datasource"; import { Product } from "./product.model"; import { MessageService } from "../messages/message.service"; import { Message } from "../messages/message.model"; @Injectable() export class ModelResolver { constructor( private model: Model, private dataSource: RestDataSource, private messages: MessageService) { } resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable { if (this.model.getProducts().length == 0) { this.messages.reportMessage(new Message("Loading data...")); return this.dataSource.getData(); } } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/model/product.model.ts ================================================ export class Product { constructor(public id?: number, public name?: string, public category?: string, public price?: number) {} } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/model/repository.model.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class Model { private products: Product[] = new Array(); private locator = (p: Product, id: number) => p.id == id; constructor(private dataSource: RestDataSource) { this.dataSource.getData().subscribe(data => this.products = data); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } getNextProductId(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[this.products.length > index + 2 ? index + 1 : 0].id; } else { return id || 0; } } getPreviousProductid(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[index > 0 ? index - 1 : this.products.length - 1].id; } else { return id || 0; } } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product).subscribe(p => { let index = this.products .findIndex(item => this.locator(item, p.id)); this.products.splice(index, 1, p); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(() => { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } }); } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/model/rest.datasource.ts ================================================ import { Injectable, Inject, InjectionToken } from "@angular/core"; import { HttpClient, HttpHeaders } from "@angular/common/http"; import { Observable, throwError } from "rxjs"; import { Product } from "./product.model"; import { catchError, delay } from "rxjs/operators"; export const REST_URL = new InjectionToken("rest_url"); @Injectable() export class RestDataSource { constructor(private http: HttpClient, @Inject(REST_URL) private url: string) { } getData(): Observable { return this.sendRequest("GET", this.url); } saveProduct(product: Product): Observable { return this.sendRequest("POST", this.url, product); } updateProduct(product: Product): Observable { return this.sendRequest("PUT", `${this.url}/${product.id}`, product); } deleteProduct(id: number): Observable { return this.sendRequest("DELETE", `${this.url}/${id}`); } private sendRequest(verb: string, url: string, body?: Product) : Observable { let myHeaders = new HttpHeaders(); myHeaders = myHeaders.set("Access-Key", ""); myHeaders = myHeaders.set("Application-Names", ["exampleApp", "proAngular"]); return this.http.request(verb, url, { body: body, headers: myHeaders }) //.pipe(delay(5000)) .pipe(catchError((error: Response) => throwError(`Network Error: ${error.statusText} (${error.status})`))); } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/model/static.datasource.ts ================================================ import { Injectable } from "@angular/core"; import { Product } from "./product.model"; @Injectable() export class StaticDataSource { private data: Product[]; constructor() { this.data = new Array( new Product(1, "Kayak", "Watersports", 275), new Product(2, "Lifejacket", "Watersports", 48.95), new Product(3, "Soccer Ball", "Soccer", 19.50), new Product(4, "Corner Flags", "Soccer", 34.95), new Product(5, "Thinking Cap", "Chess", 16)); } getData(): Product[] { return this.data; } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/ondemand/attr.directive.ts ================================================ import { Directive, ElementRef, Attribute, Input, SimpleChange } from "@angular/core"; @Directive({ selector: "[pa-attr]" }) export class PaAttrDirective { constructor(private element: ElementRef) { } @Input("pa-attr") bgClass: string; ngOnChanges(changes: { [property: string]: SimpleChange }) { let change = changes["bgClass"]; let classList = this.element.nativeElement.classList; if (!change.isFirstChange() && classList.contains(change.previousValue)) { classList.remove(change.previousValue); } if (!classList.contains(change.currentValue)) { classList.add(change.currentValue); } } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/ondemand/first.component.html ================================================
There are {{getProducts().length}} products
================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/ondemand/first.component.ts ================================================ import { Component, HostListener, Input } from "@angular/core"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { RestDataSource } from "../model/rest.datasource"; @Component({ selector: "first", templateUrl: "first.component.html" }) export class FirstComponent { _category: string = "Soccer"; _products: Product[] = []; highlighted: boolean = false; constructor(public datasource: RestDataSource) {} ngOnInit() { this.updateData(); } getProducts(): Product[] { return this._products; } set category(newValue: string) { this._category; this.updateData(); } updateData() { this.datasource.getData() .subscribe(data => this._products = data .filter(p => p.category == this._category)); } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/ondemand/ondemand.component.html ================================================
================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/ondemand/ondemand.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "ondemand", templateUrl: "ondemand.component.html" }) export class OndemandComponent { } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/ondemand/ondemand.module.ts ================================================ import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; import { OndemandComponent } from "./ondemand.component"; import { RouterModule } from "@angular/router"; import { FirstComponent } from "./first.component"; import { SecondComponent } from "./second.component"; let routing = RouterModule.forChild([ { path: "", component: OndemandComponent, children: [ { path: "", children: [ { outlet: "primary", path: "", component: FirstComponent, }, { outlet: "left", path: "", component: SecondComponent, }, { outlet: "right", path: "", component: SecondComponent, }, ] }, { path: "swap", children: [ { outlet: "primary", path: "", component: SecondComponent, }, { outlet: "left", path: "", component: FirstComponent, }, { outlet: "right", path: "", component: FirstComponent, }, ] }, ] }, ]); @NgModule({ imports: [CommonModule, routing], declarations: [OndemandComponent, FirstComponent, SecondComponent], exports: [OndemandComponent] }) export class OndemandModule { } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/ondemand/second.component.ts ================================================ import { Component } from "@angular/core"; @Component({ selector: "second", template: `
Second Component
` }) export class SecondComponent { } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/terms.guard.ts ================================================ import { Injectable } from "@angular/core"; import { ActivatedRouteSnapshot, RouterStateSnapshot, Router } from "@angular/router"; import { MessageService } from "./messages/message.service"; import { Message } from "./messages/message.model"; @Injectable() export class TermsGuard { constructor(private messages: MessageService, private router: Router) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise | boolean { if (route.params["mode"] == "create") { return new Promise((resolve, reject) => { let responses: [string, (string) => void][] = [ ["Yes", () => resolve(true)], ["No", () => resolve(false)] ]; this.messages.reportMessage( new Message("Do you accept the terms & conditions?", false, responses)); }); } else { return true; } } canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise | boolean { if (route.url.length > 0 && route.url[route.url.length - 1].path == "categories") { return new Promise((resolve, reject) => { let responses: [string, (string) => void][] = [ ["Yes", () => resolve(true)], ["No ", () => resolve(false)] ]; this.messages.reportMessage( new Message("Do you want to see the categories component?", false, responses)); }); } else { return true; } } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/tests/app.component.spec.ts ================================================ describe("Jasmine Test Environment", () => { it("test numeric value", () => expect(12).toBeGreaterThan(10)); it("test string value", () => expect("London").toMatch("^Lon")); }); ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/tests/attr.directive.spec.ts ================================================ import { TestBed, ComponentFixture } from "@angular/core/testing"; import { Component, DebugElement, ViewChild } from "@angular/core"; import { By } from "@angular/platform-browser"; import { PaAttrDirective } from "../ondemand/attr.directive"; @Component({ template: `
Test Content
` }) class TestComponent { className = "initialClass" @ViewChild(PaAttrDirective) attrDirective: PaAttrDirective; } describe("PaAttrDirective", () => { let fixture: ComponentFixture; let directive: PaAttrDirective; let spanElement: HTMLSpanElement; beforeEach(() => { TestBed.configureTestingModule({ declarations: [TestComponent, PaAttrDirective], }); fixture = TestBed.createComponent(TestComponent); fixture.detectChanges(); directive = fixture.componentInstance.attrDirective; spanElement = fixture.debugElement.query(By.css("span")).nativeElement; }); it("generates the correct number of elements", () => { fixture.detectChanges(); expect(directive.bgClass).toBe("initialClass"); expect(spanElement.className).toBe("initialClass"); fixture.componentInstance.className = "nextClass"; fixture.detectChanges(); expect(directive.bgClass).toBe("nextClass"); expect(spanElement.className).toBe("nextClass"); }); }); ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/app/tests/first.component.spec.ts ================================================ import { TestBed, ComponentFixture, async, fakeAsync, tick } from "@angular/core/testing"; import { FirstComponent } from "../ondemand/first.component"; import { Product } from "../model/product.model"; import { Model } from "../model/repository.model"; import { DebugElement } from "@angular/core"; import { By } from "@angular/platform-browser"; import { Component, ViewChild } from "@angular/core"; import { RestDataSource } from "../model/rest.datasource"; import { Observable } from "rxjs"; import { Injectable } from "@angular/core"; @Injectable() class MockDataSource { public data = [ new Product(1, "test1", "Soccer", 100), new Product(2, "test2", "Chess", 100), new Product(3, "test3", "Soccer", 100), ]; getData(): Observable { return new Observable(obs => { setTimeout(() => obs.next(this.data), 1000); }) } } describe("FirstComponent", () => { let fixture: ComponentFixture; let component: FirstComponent; let dataSource = new MockDataSource(); beforeEach(async(() => { TestBed.configureTestingModule({ declarations: [FirstComponent], providers: [ { provide: RestDataSource, useValue: dataSource } ] }); TestBed.compileComponents().then(() => { fixture = TestBed.createComponent(FirstComponent); component = fixture.componentInstance; }); })); it("performs async op", fakeAsync( () => { dataSource.data.push(new Product(100, "test100", "Soccer", 100)); fixture.detectChanges(); tick(1000); fixture.whenStable().then(() => { expect(component.getProducts().length).toBe(3); }); })); }); ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/environments/environment.prod.ts ================================================ export const environment = { production: true }; ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/environments/environment.ts ================================================ // This file can be replaced during build by using the `fileReplacements` array. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // The list of file replacements can be found in `angular.json`. export const environment = { production: false }; /* * For easier debugging in development mode, you can import the following file * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ // import 'zone.js/dist/zone-error'; // Included with Angular CLI. ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/index.html ================================================ ExampleApp ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/main.ts ================================================ 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) .catch(err => console.error(err)); ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/polyfills.ts ================================================ /** * 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/guide/browser-support */ /*************************************************************************************************** * BROWSER POLYFILLS */ /** IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** * Web Animations `@angular/platform-browser/animations` * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). */ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags * because those flags need to be set before `zone.js` being loaded, and webpack * will put import in the top of bundle, so user need to create a separate file * in this directory (for example: zone-flags.ts), and put the following flags * into that file, and then add the following code before importing zone.js. * import './zone-flags'; * * The flags allowed in zone-flags.ts are listed here. * * The following flags will work for all browsers. * * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * with the following flag, it will bypass `zone.js` patch for IE/Edge * * (window as any).__Zone_enable_cross_context_check = true; * */ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ import 'zone.js/dist/zone'; // Included with Angular CLI. /*************************************************************************************************** * APPLICATION IMPORTS */ ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/styles.css ================================================ /* You can add global styles to this file, and also import other style files */ ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/src/test.ts ================================================ // This file is required by karma.conf.js and loads recursively all the .spec and framework files import 'zone.js/dist/zone-testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; declare const require: { context(path: string, deep?: boolean, filter?: RegExp): { keys(): string[]; (id: string): T; }; }; // 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); ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/tsconfig.app.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/tsconfig.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, "target": "es2015", "module": "es2020", "lib": [ "es2018", "dom" ] } } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/tsconfig.spec.json ================================================ /* To learn more about this file see: https://angular.io/config/tsconfig. */ { "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ "jasmine" ] }, "files": [ "src/test.ts", "src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" ] } ================================================ FILE: Update for Angular 11/Chapter 29/exampleApp/tslint.json ================================================ { "extends": "tslint:recommended", "rulesDirectory": [ "codelyzer" ], "rules": { "align": { "options": [ "parameters", "statements" ] }, "array-type": false, "arrow-return-shorthand": true, "curly": true, "deprecation": { "severity": "warning" }, "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], "import-spacing": true, "indent": { "options": [ "spaces" ] }, "max-classes-per-file": false, "max-line-length": [ true, 140 ], "member-ordering": [ true, { "order": [ "static-field", "instance-field", "static-method", "instance-method" ] } ], "no-console": [ true, "debug", "info", "time", "timeEnd", "trace" ], "no-empty": false, "no-inferrable-types": [ true, "ignore-params" ], "no-non-null-assertion": true, "no-redundant-jsdoc": true, "no-switch-case-fall-through": true, "no-var-requires": false, "object-literal-key-quotes": [ true, "as-needed" ], "quotemark": [ true, "single" ], "semicolon": { "options": [ "always" ] }, "space-before-function-paren": { "options": { "anonymous": "never", "asyncArrow": "always", "constructor": "never", "method": "never", "named": "never" } }, "typedef": [ true, "call-signature" ], "typedef-whitespace": { "options": [ { "call-signature": "nospace", "index-signature": "nospace", "parameter": "nospace", "property-declaration": "nospace", "variable-declaration": "nospace" }, { "call-signature": "onespace", "index-signature": "onespace", "parameter": "onespace", "property-declaration": "onespace", "variable-declaration": "onespace" } ] }, "variable-name": { "options": [ "ban-keywords", "check-format", "allow-pascal-case" ] }, "whitespace": { "options": [ "check-branch", "check-decl", "check-operator", "check-separator", "check-type", "check-typecast" ] }, "component-class-suffix": true, "contextual-lifecycle": true, "directive-class-suffix": true, "no-conflicting-lifecycle": true, "no-host-metadata-property": true, "no-input-rename": true, "no-inputs-metadata-property": true, "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, "use-lifecycle-interface": true, "use-pipe-transform-interface": true, "directive-selector": [ true, "attribute", "app", "camelCase" ], "component-selector": [ true, "element", "app", "kebab-case" ] } } ================================================ FILE: Update for Angular 11/README.md ================================================ # Update for Angular 11 All the examples in Pro Angular 9 work with Angular 11. The two changes shown below install the Angular 11 tools and reflect a change in the way that Angular 11 progressive web applications are configured. This folder contains a complete set of projects created using Angular 11, equivilent to the "End of Chapter" projects in the main repository. When you create new projects, you will be asked whether stricter type checking should be enabled. Press return to accept the default, which is to disable the stricter checks. When you add new code files to a project, you may see this error displayed in your code editor: Error: Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option in your 'tsconfig' or 'jsconfig' to remove this warning. There has been a TypeScript compiler configuration change that triggers this warning for files that use decorators but have not yet been added to the compilation context. Continue following the examples and this error will disappear once you update the Angular module that incorprates the new file into the application. Adam Freeman, November 2020 --- **Chapter 2** To install the package for creating Angular 11 projects, use this command instead of the one shown in Listing 2-3: npm install --global @angular/cli@11.0.2 *** **Chapter 10** Use the following code for Listing 10-2: { "$schema": "./node_modules/@angular/service-worker/config/schema.json", "index": "/index.html", "assetGroups": [ { "name": "app", "installMode": "prefetch", "resources": { "files": [ "/favicon.ico", "/index.html", "/manifest.webmanifest", "/*.css", "/*.js" ] } }, { "name": "assets", "installMode": "lazy", "updateMode": "prefetch", "resources": { "files": [ "/assets/**", "/*.(eot|svg|cur|jpg|png|webp|gif|otf|ttf|woff|woff2|ani)", "/font/*" ] } } ], "dataGroups": [ { "name": "api-product", "urls": ["/api/products"], "cacheConfig" : { "maxSize": 100, "maxAge": "5d" } }], "navigationUrls": [ "/**" ] } **Chapter 16** Use the following instead of Listing 16-16: import { Directive, ViewContainerRef, TemplateRef, Input, SimpleChange, IterableDiffer, IterableDiffers, ChangeDetectorRef, IterableChangeRecord } from "@angular/core"; @Directive({ selector: "[paForOf]" }) export class PaIteratorDirective { private differ: IterableDiffer; constructor(private container: ViewContainerRef, private template: TemplateRef, private differs: IterableDiffers, private changeDetector: ChangeDetectorRef) { } @Input("paForOf") dataSource: any; ngOnInit() { this.differ = >this.differs.find(this.dataSource).create(); } ngDoCheck() { let changes = this.differ.diff(this.dataSource); if (changes != null) { console.log("ngDoCheck called, changes detected"); let arr: IterableChangeRecord[] = []; changes.forEachAddedItem(addition => arr.push(addition)); arr.forEach(addition => { this.container.createEmbeddedView(this.template, new PaIteratorContext(addition.item, addition.currentIndex, arr.length)); }); } } } class PaIteratorContext { odd: boolean; even: boolean; first: boolean; last: boolean; constructor(public $implicit: any, public index: number, total: number) { this.odd = index % 2 == 1; this.even = !this.odd; this.first = index == 0; this.last = index == total - 1; } } Use the following code for Listing 16-19: import { Directive, ViewContainerRef, TemplateRef, Input, SimpleChange, IterableDiffer, IterableDiffers, ChangeDetectorRef, ViewRef, IterableChangeRecord } from "@angular/core"; @Directive({ selector: "[paForOf]" }) export class PaIteratorDirective { private differ: IterableDiffer; private views: Map = new Map(); constructor(private container: ViewContainerRef, private template: TemplateRef, private differs: IterableDiffers, private changeDetector: ChangeDetectorRef) { } @Input("paForOf") dataSource: any; ngOnInit() { this.differ = >this.differs.find(this.dataSource).create(); } ngDoCheck() { let changes = this.differ.diff(this.dataSource); if (changes != null) { let arr: IterableChangeRecord[] = []; changes.forEachAddedItem(addition => arr.push(addition)); arr.forEach(addition => { let context = new PaIteratorContext(addition.item, addition.currentIndex, arr.length); context.view = this.container.createEmbeddedView(this.template, context); this.views.set(addition.trackById, context); }); let removals = false; changes.forEachRemovedItem(removal => { removals = true; let context = this.views.get(removal.trackById); if (context != null) { this.container.remove(this.container.indexOf(context.view)); this.views.delete(removal.trackById); } }); if (removals) { let index = 0; this.views.forEach(context => context.setData(index++, this.views.size)); } } } } class PaIteratorContext { index: number; odd: boolean; even: boolean; first: boolean; last: boolean; view: ViewRef; constructor(public $implicit: any, public position: number, total: number ) { this.setData(position, total); } setData(index: number, total: number) { this.index = index; this.odd = index % 2 == 1; this.even = !this.odd; this.first = index == 0; this.last = index == total - 1; } } ================================================ FILE: corrections+errata.md ================================================ # Errata for *Pro Angular 9* **Chapter 2** On page 15, Listing 2-7 does not show the concise constructor described in the text. The code should be as follows: export class TodoItem { constructor(public task: string, public complete: boolean = false) { } } (Thanks to Siavash Fallahdoust for reporting this problem) *** **Chapter 12** On page 263, the command to detect changes should be as follows: appRef.tick() (Thanks to Felipe Windmoller for reporting this problem) *** **Chapter 16** Listing 16-3 uses the value of the Counter1 variable when setting the cookie for Counter2. The code should be as follows: using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.DependencyInjection; using System; using System.Threading.Tasks; namespace Platform { public class Startup { public void ConfigureServices(IServiceCollection services) { } public void Configure(IApplicationBuilder app) { app.UseDeveloperExceptionPage(); app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapGet("/cookie", async context => { int counter1 = int.Parse(context.Request.Cookies["counter1"] ?? "0") + 1; context.Response.Cookies.Append("counter1", counter1.ToString(), new CookieOptions { MaxAge = TimeSpan.FromMinutes(30) }); int counter2 = int.Parse(context.Request.Cookies["counter2"] ?? "0") + 1; context.Response.Cookies.Append("counter2", counter2.ToString(), new CookieOptions { MaxAge = TimeSpan.FromMinutes(30) }); await context.Response .WriteAsync($"Counter1: {counter1}, Counter2: {counter2}"); }); endpoints.MapGet("clear", context => { context.Response.Cookies.Delete("counter1"); context.Response.Cookies.Delete("counter2"); context.Response.Redirect("/"); return Task.CompletedTask; }); endpoints.MapFallback(async context => await context.Response.WriteAsync("Hello World!")); }); } } } (Thanks to Patrick Lanz for reporting this problem) *** **Chapter 26** Listing 26-1 doesn't handle the length of the data array correctly, such that the last item is never selected. The code should be as follows: import { Injectable } from "@angular/core"; import { Product } from "./product.model"; import { Observable } from "rxjs"; import { RestDataSource } from "./rest.datasource"; @Injectable() export class Model { private products: Product[] = new Array(); private locator = (p: Product, id: number) => p.id == id; constructor(private dataSource: RestDataSource) { this.dataSource.getData().subscribe(data => this.products = data); } getProducts(): Product[] { return this.products; } getProduct(id: number): Product { return this.products.find(p => this.locator(p, id)); } getNextProductId(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[this.products.length > index + 1 ? index + 1 : 0].id; } else { return id || 0; } } getPreviousProductid(id: number): number { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { return this.products[index > 0 ? index - 1 : this.products.length - 1].id; } else { return id || 0; } } saveProduct(product: Product) { if (product.id == 0 || product.id == null) { this.dataSource.saveProduct(product) .subscribe(p => this.products.push(p)); } else { this.dataSource.updateProduct(product).subscribe(p => { let index = this.products .findIndex(item => this.locator(item, p.id)); this.products.splice(index, 1, p); }); } } deleteProduct(id: number) { this.dataSource.deleteProduct(id).subscribe(() => { let index = this.products.findIndex(p => this.locator(p, id)); if (index > -1) { this.products.splice(index, 1); } }); } } (Thanks to Edwin van Ree for reporting this problem)